Comparação Processadores Hardwired x Microcoded Processador Microded Processador Hardwired Ciclos...

Post on 18-Apr-2015

106 views 0 download

Transcript of Comparação Processadores Hardwired x Microcoded Processador Microded Processador Hardwired Ciclos...

Comparação Processadores

Hardwired x Microcoded

Processador Microded

Processador Hardwired

Ciclos por Instrução e Bytes p/modo de end.

PSW - Memória

C AC RS1 OVF0 RS0 F1 P

Bit 7 - C - Carry Flag, setado qdo a adição > 0FFh ou quando a subtração < 0. Vai um da soma ou empresta um da subtração.

Bit 6 - AC - Auxiliary Carry Flag, setado qdo o low nibble afeta o high nibble, útil em operações com BCD.

Bit 5 - F0 - Flag de usuário, disponível.

Bit 4,3 - RS1, RS0 - Bits de seleção do banco de registradores.

Bit 2 - OV - Overflow Flag, indica estouro de conta em operações de soma e subtração. Ou seja resultados > +127 e < -128.

Bit 1 - F1 - Flag de usuário, disponível.

Bit 0 - P - Parity Flag, flag de paridade - setado se o acumulador possui um número ímpar de “1s”. Ou de outra forma Acumulador + o bit de paridade tem sempre um número par de “1”s.

Memória Dados Interna

Registradores de I/O

Áreas Bit endereçáveis- Área entre 20 e 2Fh

16 bytes, 128 bits onde cada bit tem um endereço especial - 00 a 7Fh

- Área dos SFR

P0 - Endereçável como byte - 80h ou Bits individuais: 80, 81, 82, 83, 84, 85, 86, 87h (possuem nomes P0.0, P0.1 ....).

P1 - 90h ou Bits individuais: 90, 91, 92, 93, 94, 95, 96, 97h (possuem nomes P1.0, P1.1 ....).

P2 - A0h ou Bits individuais: A0, A1, A2, A3, A4, A5, A6, A7h (possuem nomes P2.0, P2.1 ....).

P3 - B0h ou Bits individuais: B0, B1, B2, B3, B4, B5, B6, B7h (possuem nomes P3.0, P3.1 ....).

- Outros

ACC, B, IE, IP, PSW, SCON, TCON

Instruções Aritméticas

Instruções Lógicas

Movimentação de DadosMemória de Dados Interna

Memória de Dados Externa

Memória de Programa

Instruções Booleanas (bit)

Instruções de Desvio de Fluxo

LCALL --> Jump para uma subrotina dentro do espaco de 64Kbytes

ACALL --> Jump para uma subrotina dentro do espaco de 2Kbytes (11bits)

SJMP --> Jump para uma posição -128, +127 posições a partir da próxima

LJMP --> Jump para qualquer posição dentro do espaço de 64Kbytes

AJMP --> Jump para qualquer posição dentro de um espaço de 2Kbbytes (11bits)

Não Condicionais

Condicionais

CJNE --> Se byte #data, pula. Se <byte> < #data então C=1, senão C = 0

Seqüência de estados

Executando instruções

1 ciclo de máquina = 12 ciclos de clock = 6 estados

Execução de instruções na memória de programa externa

Seqüência de estados

PCL - Program Counter Low

PCH - Program Counter Low

DPH - Data Pointer High

DPL - Data Pointer Low