Conteúdo:

Instruções lógicas
Instruções aritméticas
Dicionário de Computação (em inglês)

Instruções lógicas

São usadas para realizar operações lógicas nos operadores.

AND
NEG
NOT
OR
TEST
XOR

INSTRUÇÃO AND

Propósito: Realiza a conjunção de operadores bit a bit.

Sintaxe:

AND destino,fonte

Com esta instrução a operação lógica "y" para ambos os operadores é usada como na tabela:


Fonte    Destino  |   Destino

-----------------------------

  1         1     |     1

  1         0     |     0

  0         1     |     0

  0         0     |     0

O resultado desta operação é armazenado no operador de destino.

INSTRUÇÃO NEG

Propósito: Gera o complemento de 2.

Sintaxe:

NEG destino

Esta instrução gera o complemento de 2 do operador destino e o armazena no mesmo operador. Por exemplo, if AX armazena o valor 1234H, então:

NEG AX

Isto fará com o que o valor EDCCH fque armazenado no registrador AX.

INSTRUÇÃO NOT

Propósito: Faz a negação do operador de destino bit a bit.

Sintaxe:

NOT destino

O resultado é armazenado no mesmo operador de destino.

INSTRUÇÃO OR

Propósito: Realiza um OU lógico.

Sintaxe:

OR destino,fonte

A instrução OR, faz uma disjunção lógica bit a bit dos dois operadores:




Fonte      Destino    |    Destino

-----------------------------------

   1          1       |       1

   1          0       |       1

   0          1       |       1

   0          0       |       0

INSTRUÇÃO TEST

Propósito: Compara logicamente os operadores.

Sintaxe:

TEST destino,fonte

Realiza uma conjunção, bit a bit, dos operadores, mas difere da instrução AND, uma vez que não coloca o resultado no operador de destino. Tem efeito sobre o registrador de flag.

INSTRUÇÃO XOR

Propósito: Realiza um OU exclusivo.

Sintaxe:

XOR destino,fonte

Esta instrução realizxa uma disjunção exclusiva de dois operadores bit a bit.


Fonte      Destino    |    Destino

-----------------------------------

   1          1       |       0

   0          0       |       1

   0          1       |       1

   0          0       |       0



Instruções aritméticas.

São usadas para realizar operações aritméticas nos operadores.

ADC
ADD
DIV
IDIV
MUL
IMUL
SBB
SUB

INSTRUÇÃO ADC

Propósito: Efetuar a soma entre dois operandos com carry.

Sintaxe:

ADC destino,fonte

Esta instrução efetua a soma entre dois operandos, mais o valor do flag CF, existente antes da operação. Apenas o operando destino e os flags são afetados.

O resultado é armazenado no operador de destino.

INSTRUÇÃO ADD

Propósito: Adição de dois operadores.

Sintaxe:

ADD destino,fonte

Esta instrução adiciona dois operadores e armazena o resultado no operador destino.

INSTRUÇÃO DIV

Propósito: Divisão sem sinal.

Sintaxe:

DIV fonte

O divisor pode ser um byte ou uma palavra e é o operador que é dado na instrução.

Se o divisor é de 8 bits, o registrador AX de 16 bits é tomado como dividendo e se o divisor é de 16 bits, o par de registradores DX:AX será tomado como dividendo, tomando a palavra alta de DX e a baixa de AX.

Se o divisor for um byte, então o quociente será armazenado no registrador AL e o resto em AH. Se for uma palavra, então o quociente é armazenado em AX e o resto em DX.

INSTRUÇÃO IDIV

Propósito: Divisão com sinal.

Sintaxe:

IDIV fonte

Consiste basicamente como a instrução DIV, diferencia-se apenas por realizar a operação com sinal.

Para os resultados são usados os mesmos registradores da instrução DIV.

INSTRUÇÃO MUL

Propósito: Multiplicação com sinal.

Sintaxe:

MUL fonte

Esta instrução realiza uma multiplicação não sinalizada entre o conteúdo do acumulador AL ou AX pelo operando-fonte, devolvendo o resultado no acumulador AX caso a operação tenha envolvido AL com um operando de 8 bits, ou em DX e AX caso a operação tenha envolvido AX e um operando de 16 bits.

INSTRUÇÃO IMUL

Propósito: Multiplicção de dois números inteiros com sinal.

Sintaxe:

IMUL fonte

Esta instrução faz o mesmo que a anterior, difere apenas pela inclusão do sinal.

Os resultados são mantidos nos mesmos registradores usados pela instrução MUL.

INSTRUÇÃO SBB

Propósito: Subtração com carry.

Sintaxe:

SBB destino,fonte

Esta instrução subtrai os operadores e subtrai um do resultado se CF está ativado. O operador fonte é sempre subtraído do destino.

Este tipo de subtração é usado quando se trabalha com quantidades de 32 bits.

INSTRUÇÃO SUB

Propósito: Subtração.

Sintaxe:

SUB destino,fonte

Esta instrução subtrai o operador fonte do destino.

WG
Powered by WebGlimpse