Informática Numaboa - Tutoriais e Programação
Cap. III - Registradores do Microprocessador
Sab 15 Dez 2007 13:46 |
- Detalhes
- Categoria: MASM + RadASM
- Atualização: Segunda, 01 Março 2010 22:07
- Autor: Alan Moreno
- Acessos: 13218
Masm32+RadASM
Capítulo III: Registradores do Microprocessador
Escrito por: ^A|An M0r3N0^ Conselheiro: RedH@wk Tradução: ~Uglinho~O presente texto foi escrito para fins educacionais e de pesquisa e é de livre distribuição contanto que se preserve o conteúdo e os direitos do autor.
Registradores do Microprocessador
Nosso processador precisa de registradores para armazenar dados que podem ser utilizados livremente. Entre os principais registradores temos:
Registradores de propósito geral
São 4 registradores - EAX, EBX, ECX, EDX - que são empregados para uso geral. Subdividem-se em:
EAX, EBX, ECX, EDX (32 bits) | |
AX, BX, CX, DX (16 bits) | |
AH, BH, CH, DH (8 bits, H = High) | AL, BL, CL, DL (8 bits, L = Low) |
Exemplo:
EAX = 12345678 AX = 5678 AH = 56 AL = 78
O processador 80386 permite o uso destes registradores - EAX, EBX, ECX, EDX - que são de 32 bits.
Registradores de uso geral | Descrição |
EAX (Acumulador) | É utilizado para operações aritméticas (soma, subtração, divisão e multiplicação). Algumas funções, depois de serem utilizadas, devolvem um valor para EAX. |
EBX (Base) | É utilizado para direcionar o acesso a dados situados na memória. Também pode ser utilizado para operações aritméticas. |
ECX (Contador) | É utilizado como contador por algumas instruções. Também é utilizado para operações aritméticas. |
EDX (Dados) | Algumas operações de entrada/saída requerem seu uso e as operações de multiplicação e divisão com algarismos grandes supõem que EDX e EAX trabalhem juntos. Pode usar os registradores para soma e subtração de valores de 8, 16, 32 bits. |
. | |
Registradores de Índice | Descrição |
ESI | Este registrador de índice de 16 bits é requerido por algumas operações com cadeias (de caracteres). |
EDI | Este registrador de índice de destino também é requerido por algumas operações com cadeias de caracteres. |
. | |
Registradores de Bandeiras (Flags) | Descrição |
São usados para registrar a informação de estado e de controle das operações do microprocessador. São 9: CF, OF, ZF, SF, PF, AF, DF, IF, TF. |
Instruções do microprocessador
As instruções são sequências de bits (uns e zeros). Indicam qual operação deve ser feita e com que dados operação deve ser realizada. Por enquanto veremos 11 instruções:
Esta instrução MOV significa mover e se encarrega de passar o conteúdo do operando Fonte para o do Destino. Na programação devemos respeitar as seguintes regras: Destino - Podem ser variáveis e registradores de 8, 16 e 32 bits; Fonte - Podem ser variáveis, registros do Windows e valores inteiros.
A instrução ADD significa Somar. Soma o conteúdo dos dois operandos e o resultado é repassado para o operando Destino.
Destino - Podem ser variáveis e registradores de 8, 16 e 32 bits. Fonte - Podem ser variáveis, registros do Windows e valores inteiros.
A instrução SUB significa Subtrair. Subtrai o conteúdo do operando Fonte do Destino e o resultado é armazenado no operando Destino.
Destino - Podem ser variáveis e registradores de 8, 16 e 32 bits. Fonte - Podem ser variáveis, registros do Windows e valores inteiros.
Estas instruções incrementam e decrementam respectivamente o valor contido no operando Destino. Destino - Podem ser variáveis e registradores de 8, 16 e 32 bits.
PUSH se encarrega de guardar o conteúdo do operando Fonte na Pilha. Fonte - Podem ser variáveis, valores inteiros e registradores de 16 e 32 bits.
Ao contrário de PUSH, esta instrução recupera o conteúdo guardado na pilha. Destino - Podem ser variáveis e registradores de 16 e 32 bits.
Quando guardamos vários valores com a instrução PUSH e quiseremos recuperar estes valores, utilizamos a instrução POP respeitando a seguinte regra:
"O último valor guardado será o primeiro a ser recuperado".
- Anterior
- Próximo >>