Arquitetura
Linguagem de máquina então é .EXE.
Assembly é linguagem de baixo nível, linguagem de máquina é binário (0 e 1).
Para montar um programa assembly eu preciso de um Assembler.
IP: Instruction Pointer, ponteiro de instruções, IP diz qual endereço usar.
O processador tem uma tabela que diz o que ele faz com cada um dos comandos como o D6, essa tabela se chama firmware.
BIU é responsável de pegar o endereço e colocar no barramento de endereço.
mov ax,07 – 4 + 1 + 9 mov bx,08 – 4 + 1 + 9 inc ax – 4 + 1 + 1
Total = 34 pulsos/clock
Buscar = ler 1 byte em memória = 4 pulsos
Decodificar = 1 pulso
De onde saiu o 9?, ler a memoria = 4 pulsos, ler de novo a memoria = 4 pulsos, atribuir para ax= 1 pulso, total 9.
LATCH: latch de instruções, dispositivo de armazenamento temporário, toda vez que um endereço entra no latch, há um circuito que conta as instruções que entram.
DECOD: ele pega o comando, vai até a tabela e diz o que tem que fazer com ele.
Arquitetura de Computadores II – Aula 03
Decodificar: consultar a tabela chamada firmware.
4-1-9: são pulsos clock que é o tempo que marca o computador
mov ax,07 – 4 + 1 + 9 = 14 mov bx,08 – 4 + 1 + 9 = 14 inc ax – 4 + 1 + 1 = 6
Total = 34 pulsos/clock
Processador Pipeline: ele teve o melhor tempo sem ter que investir em nada mais. Ele surgiu em 1989 e apareceu pela primeira vez no INTEL 8080.
Pipeline de 3 estágios = 24 pulsos/clock, tivemos ganho de 10 pulsos (25%)
(esperar a decodificação não se espera na FILA e sim na QUEUE)
Pipeline de 5 estágios (agora busca e executa tem ajudantes)
1 + 3 + 1 + 3 + 6 = 14
1 + 3 + 1 + 3 + 6 = 14
1 + 3 + 1 + 0 + 1 = 6
Total = 34 pulsos/clock
Pipeline de 5 estágios = 21 pulsos/clock, tivemos ganho de 3 pulsos em relação ao segundo (10%) e 13 pulsos em relação ao primeiro.
mova x,0007 4 + 1 = 9 = 14 pulsos
14 pulsos é quanto? (depende do processador da pessoa!!)
Exemplo: Processador de