Esempio 08: esercizio complemento a 2 con NOT e INC

Un esempio di utilizzo di complemento a due per effettuare la sottrazione da due parole, in questo caso proposto di 8 bit. Sfruttiamo le funzioni NOT ed INC.

; esempio 08
; date due parole di 8 bit, fai la differenza con il complemento a due

; per il complemento si prende la parola completa di tanti zeri quanti sono le cifre del primo numero, si nega

; invertendo gli uno con gli zero e gli zero con gli uno, si aggiunge +1

; usiamo le funzioni NOT e INC

.STACK  
.DATA
    opr1 dw 11111011b
    opr2 dw 11100101b  ; il negato sarà 00011010b

.CODE
.STARTUP

; usa not e ADD per fare il complemento a due di opr2    

MOV AX, opr1
NOT AX
INC  AX  ;incrementa di 1: il classico ì++ del c++!

;in modo simile si comporta DEC che sottrae 1
ADD AX, opr2

.EXIT
END

Ultima modifica 21 Febbraio 2022