EMU8086 GENERATED LISTING. MACHINE CODE <- SOURCE. complemento2.exe -- emu8086 assembler version: 4.07 [ 19/02/2013 -- 0.05.14 ] =================================================================================================== [LINE] LOC: MACHINE CODE SOURCE =================================================================================================== [ 1] : Dati SEGMENT ; area dati [ 2] 0000: 38 00 N1 DW 56d [ 3] 0002: 23 00 N2 DW 35d [ 4] 0004: 00 00 Compl DW ? [ 5] 0006: 00 00 Ris DW ? [ 6] 0008: 00 00 RisCompl DW ? [ 7] : Dati ENDS [ 8] : [ 9] : Codice SEGMENT [ 10] : [ 11] 0010: Inizio: [ 12] 0010: B8 00 00 MOV AX,Dati ; setta il segmento DS all'area dati [ 13] 0013: 8E D8 MOV DS,AX [ 14] : [ 15] 0015: 8B 1E 02 00 MOV BX,N2 [ 16] 0019: 89 1E 04 00 MOV Compl,BX ; trasferisce N2 [ 17] 001D: F7 16 04 00 NOT Compl ; effettua complemento a due di N2 (lo trasforma in negativo) [ 18] 0021: FF 06 04 00 INC Compl [ 19] 0025: A1 04 00 MOV AX,Compl [ 20] 0028: 03 06 00 00 ADD AX,N1 ; effettua addizione del numero complementato (negativo) [ 21] 002C: A3 08 00 MOV RisCompl,AX [ 22] : [ 23] 002F: A1 00 00 MOV AX,N1 [ 24] 0032: 2B 06 02 00 SUB AX,N2 ; effettua la sottrazione dei due numeri (analogo a prima) [ 25] 0036: A3 06 00 MOV Ris,AX [ 26] : [ 27] 0039: B4 4C MOV AH,4Ch ; ritorna al DOS... [ 28] 003B: CD 21 INT 21h [ 29] : [ 30] : Codice ENDS [ 31] : [ 32] : END Inizio [ 33] : ===================================================================================================