Instruções aritméticas

Voltar

Classe

Sintaxe em assembly

Campos da instrução (16 bits)

Acções

Flags afectadas

Comentários

1º opcode (4bits)

2º opcode (4bits)

1º operando (4bits)

2º operando (4bits)

Instruções aritméticas

ADD

Rd, Rs

ARITOP

ADD

Rd

Rs

Rd ¬ Rd + Rs

Z, N, C, V

 

Rd, k

ADDI

Rd

k

Rd ¬ Rd + k

Z, N, C, V

k Î [-8 .. +7]

ADDC

Rd, Rs

ADDC

Rd

Rs

Rd ¬ Rd + Rs + C

Z, N, C, V

 

SUB

Rd, Rs

SUB

Rd

Rs

Rd ¬ Rd – Rs

Z, N, C, V

 

Rd, k

SUBI

Rd

k

Rd ¬ Rd - k

Z, N, C, V

k Î [-8 .. +7]

SUBB

Rd, Rs

SUBB

Rd

Rs

Rd ¬ Rd – Rs - C

Z, N, C, V

 

CMP

Rd, Rs

CMP

Rd

Rs

(Rd – Rs)

Z, N, C, V

Rd não é alterado

Rd, k

CMPI

Rd

k

(Rd – k)

Z, N, C, V

k Î [-8 .. +7]

Rd não é alterado

MUL

Rd, Rs

MUL

Rd

Rs

Rd ¬ Rd * Rs

Z, N, C, V

O registo Rs é alterado

DIV

Rd, Rs

DIV

Rd

Rs

Rd ¬ quociente(Rd / Rs)

Z, N, C,

V¬0

Divisão inteira

MOD

Rd, Rs

MOD

Rd

Rs

Rd ¬ resto(Rd / Rs)

Z, N, C,

V¬0

Resto da divisão inteira

NEG

Rd

NEG

Rd

xxxx

Rd ¬ –Rd

Z, N, C, V

Complemento para 2

V¬1 se Rd for 8000H

Livre

 

 

 

 

 

 

 

Livre