0% found this document useful (0 votes)
63 views

EN - NO:090410107061 Practical: 2 Aim: Program For 8 Bit, 16 Bit, 32 Bit Manipulation 1. 8 Bit ADDITION

Uploaded by

Rock_On_1727
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
63 views

EN - NO:090410107061 Practical: 2 Aim: Program For 8 Bit, 16 Bit, 32 Bit Manipulation 1. 8 Bit ADDITION

Uploaded by

Rock_On_1727
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 30

EN.

NO:090410107061
PRACTICAL: 2
AIM: PROGRAM FOR 8 BIT,16 BIT,32 BIT MANIPULATION
1. 8 bit ADDITION
data segment
x db 06h
y db 04h
data ends
code segment
assume cs:code,ds:data
start:
mov ax,data
mov ds,ax
mov al,x
mov bl,y
add al,bl
mov ax,4ch
int 21h
code ends
end start

OUTPUT:
C:\tasm>tasm d.asm
Assembling file: d.asm
Error messages: None

Warning messages: None


Passes:

Remaining memory: 426k

C:\tasm>tlink d.obj
Turbo Link Version 3.01 Copyright (c) 1987, 1990 Borland International
Warning: No stack

C:\tasm>debug d.exe
-t

AX=13C5 BX=0000 CX=0023 DX=0000 SP=0000 BP=0000 SI=0000 DI=0000


DS=13B5 ES=13B5 SS=13C5 CS=13C6 IP=0003 NV UP EI PL NZ NA PO NC
13C6:0003 8ED8

MOV

DS,AX

-t
AX=13C5 BX=0000 CX=0023 DX=0000 SP=0000 BP=0000 SI=0000 DI=0000
DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=0005 NV UP EI PL NZ NA PO NC
13C6:0005 A00000

MOV

AL,[0000]

DS:0000=06

-t

AX=1306 BX=0000 CX=0023 DX=0000 SP=0000 BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=0008 NV UP EI PL NZ NA PO NC
13C6:0008 8A1E0100
-t

MOV

BL,[0001]

DS:0001=04

AX=1306 BX=0004 CX=0023 DX=0000 SP=0000 BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=000C NV UP EI PL NZ NA PO NC
13C6:000C 02C3

ADD

AL,BL

-t

AX=130A BX=0004 CX=0023 DX=0000 SP=0000 BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=000E NV UP EI PL NZ NA PE NC
13C6:000E B84C00

MOV

AX,004C

-t

AX=004C BX=0004 CX=0023 DX=0000 SP=0000 BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=0011 NV UP EI PL NZ NA PE NC
13C6:0011 CD21

INT

21

-t

AX=004C BX=0004 CX=0023 DX=0000 SP=FFFA BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=00A7 IP=107C NV UP DI PL NZ NA PE NC
00A7:107C 90

NOP

-q

2. 8 BIT SUBTRACTION
data segment
x db 06h
y db 04h
data ends

code segment
assume cs:code,ds:data
start:
mov ax,data
mov ds,ax
mov al,x
mov bl,y
sub al,bl
mov ax,4ch
int 21h
code ends
end start

OUTPUT:
C:\tasm>tasm d.asm
Turbo Assembler Version 3.1 Copyright (c) 1988, 1992 Borland International
Assembling file: d.asm
Error messages: None
Warning messages: None
Passes:

Remaining memory: 426k

C:\tasm>tlink d.obj
Turbo Link Version 3.01 Copyright (c) 1987, 1990 Borland International
Warning: No stack

C:\tasm>debug d.exe
-t

AX=13C5 BX=0000 CX=0023 DX=0000 SP=0000 BP=0000 SI=0000 DI=0000


DS=13B5 ES=13B5 SS=13C5 CS=13C6 IP=0003 NV UP EI PL NZ NA PO NC
13C6:0003 8ED8

MOV

DS,AX

-t

AX=13C5 BX=0000 CX=0023 DX=0000 SP=0000 BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=0005 NV UP EI PL NZ NA PO NC
13C6:0005 A00000

MOV

AL,[0000]

DS:0000=06

-t

AX=1306 BX=0000 CX=0023 DX=0000 SP=0000 BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=0008 NV UP EI PL NZ NA PO NC
13C6:0008 8A1E0100

MOV

BL,[0001]

DS:0001=04

-t

AX=1306 BX=0004 CX=0023 DX=0000 SP=0000 BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=000C NV UP EI PL NZ NA PO NC
13C6:000C 2AC3

SUB

AL,BL

-t

AX=1302 BX=0004 CX=0023 DX=0000 SP=0000 BP=0000 SI=0000 DI=0000

DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=000E NV UP EI PL NZ NA PO NC


13C6:000E B84C00

MOV

AX,004C

-t

AX=004C BX=0004 CX=0023 DX=0000 SP=0000 BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=0011 NV UP EI PL NZ NA PO NC
13C6:0011 CD21

INT

21

-t
AX=004C BX=0004 CX=0023 DX=0000 SP=FFFA BP=0000 SI=0000 DI=0000
DS=13C5 ES=13B5 SS=13C5 CS=00A7 IP=107C NV UP DI PL NZ NA PO NC
00A7:107C 90

NOP

-q

3. 8 BIT MULTIPLICATION
data segment
x db 06h
y db 04h
data ends
code segment
assume cs:code,ds:data
start:
mov ax,data
mov ds,ax
mov al,x
mov bl,y
mul bl

mov ax,4ch
int 21h
code ends
end start

OUTPUT:
C:\tasm>tasm mul.asm
Turbo Assembler Version 3.1 Copyright (c) 1988, 1992 Borland International

Assembling file: mul.asm


Error messages: None
Warning messages: None
Passes:

Remaining memory: 426k

C:\tasm>tlink mul.obj
Turbo Link Version 3.01 Copyright (c) 1987, 1990 Borland International
Warning: No stack

C:\tasm>debug mul.exe
-t

AX=13C5 BX=0000 CX=0023 DX=0000 SP=0000 BP=0000 SI=0000 DI=0000


DS=13B5 ES=13B5 SS=13C5 CS=13C6 IP=0003 NV UP EI PL NZ NA PO NC
13C6:0003 8ED8

MOV

DS,AX

-t

AX=13C5 BX=0000 CX=0023 DX=0000 SP=0000 BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=0005 NV UP EI PL NZ NA PO NC
13C6:0005 A00000

MOV

AL,[0000]

DS:0000=06

-t

AX=1306 BX=0000 CX=0023 DX=0000 SP=0000 BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=0008 NV UP EI PL NZ NA PO NC
13C6:0008 8A1E0100

MOV

BL,[0001]

DS:0001=04

-t

AX=1306 BX=0004 CX=0023 DX=0000 SP=0000 BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=000C NV UP EI PL NZ NA PO NC
13C6:000C F6E3

MUL

BL

-t

AX=0018 BX=0004 CX=0023 DX=0000 SP=0000 BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=000E NV UP EI PL NZ NA PO NC
13C6:000E B84C00

MOV

AX,004C

-t

AX=004C BX=0004 CX=0023 DX=0000 SP=0000 BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=0011 NV UP EI PL NZ NA PO NC
13C6:0011 CD21

INT

21

-t
AX=004C BX=0004 CX=0023 DX=0000 SP=FFFA BP=0000 SI=0000 DI=0000
DS=13C5 ES=13B5 SS=13C5 CS=00A7 IP=107C NV UP DI PL NZ NA PO NC
00A7:107C 90

NOP

-q

4. 8 BIT DIVISION
data segment
x db 06h
y db 02h
data ends
code segment
assume cs:code,ds:data
start:
mov ax,data
mov ds,ax
mov ah,00h
mov al,x
mov bl,y
div bl
mov ax,4ch
int 21h
code ends
end start

OUTPUT:
C:\tasm>tasm div.asm

Turbo Assembler Version 3.1 Copyright (c) 1988, 1992 Borland International

Assembling file: div.asm


Error messages: None
Warning messages: None
Passes:

Remaining memory: 426k

C:\tasm>tlink div.obj
Turbo Link Version 3.01 Copyright (c) 1987, 1990 Borland International
Warning: No stack

C:\tasm>debug div.exe
-t

AX=13C5 BX=0000 CX=0023 DX=0000 SP=0000 BP=0000 SI=0000 DI=0000


DS=13B5 ES=13B5 SS=13C5 CS=13C6 IP=0003 NV UP EI PL NZ NA PO NC
13C6:0003 8ED8

MOV

DS,AX

-t

AX=13C5 BX=0000 CX=0025 DX=0000 SP=0000 BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=0005 NV UP EI PL NZ NA PO NC
13C6:0005 B400
-t

MOV

AH,00

AX=00C5 BX=0000 CX=0025 DX=0000 SP=0000 BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=0007 NV UP EI PL NZ NA PO NC
13C6:0007 A00000

MOV

AL,[0000]

DS:0000=06

-t

AX=0006 BX=0000 CX=0025 DX=0000 SP=0000 BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=000A NV UP EI PL NZ NA PO NC
13C6:000A 8A1E0100

MOV

BL,[0001]

DS:0001=02

-t

AX=0006 BX=0002 CX=0025 DX=0000 SP=0000 BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=000E NV UP EI PL NZ NA PO NC
13C6:000E F6F3

DIV

BL

-t

AX=0003 BX=0002 CX=0025 DX=0000 SP=0000 BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=0010 NV UP EI PL NZ AC PO NC
13C6:0010 B84C00

MOV

AX,004C

-t
AX=004C BX=0002 CX=0025 DX=0000 SP=0000 BP=0000 SI=0000 DI=0000
DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=0013 NV UP EI PL NZ AC PO NC
13C6:0013 CD21
-t

INT

21

AX=004C BX=0002 CX=0025 DX=0000 SP=FFFA BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=00A7 IP=107C NV UP DI PL NZ AC PO NC
00A7:107C 90

NOP

5. 16 BIT ADDITION
data segment
x dw 0006h
y dw 0002h
data ends
code segment
assume cs:code,ds:data
start:
mov ax,data
mov ds,ax
mov ax,x
mov bx,y
add ax,bx
mov ax,4ch
int 21h
code ends
end start

OUTPUT:
C:\tasm>tasm add.asm
Turbo Assembler Version 3.1 Copyright (c) 1988, 1992 Borland International

Assembling file: add.asm

Error messages: None


Warning messages: None
Passes:

Remaining memory: 426k

C:\tasm>tlink add.obj
Turbo Link Version 3.01 Copyright (c) 1987, 1990 Borland International
Warning: No stack

C:\tasm>debug add.exe
-t

AX=13C5 BX=0000 CX=0025 DX=0000 SP=0000 BP=0000 SI=0000 DI=0000


DS=13B5 ES=13B5 SS=13C5 CS=13C6 IP=0003 NV UP EI PL NZ NA PO NC
13C6:0003 8ED8

MOV

DS,AX

-t
AX=13C5 BX=0000 CX=0025 DX=0000 SP=0000 BP=0000 SI=0000 DI=0000
DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=0005 NV UP EI PL NZ NA PO NC
13C6:0005 B400

MOV

AH,00

-t

AX=00C5 BX=0000 CX=0025 DX=0000 SP=0000 BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=0007 NV UP EI PL NZ NA PO NC

13C6:0007 A10000

MOV

AX,[0000]

DS:0000=0006

-t

AX=0006 BX=0000 CX=0025 DX=0000 SP=0000 BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=000A NV UP EI PL NZ NA PO NC
13C6:000A 8B1E0200

MOV

BX,[0002]

DS:0002=0002

-t

AX=0006 BX=0002 CX=0025 DX=0000 SP=0000 BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=000E NV UP EI PL NZ NA PO NC
13C6:000E 03C3

ADD

AX,BX

-t

AX=0008 BX=0002 CX=0025 DX=0000 SP=0000 BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=0010 NV UP EI PL NZ NA PO NC
13C6:0010 B84C00

MOV

AX,004C

-t
AX=004C BX=0002 CX=0025 DX=0000 SP=0000 BP=0000 SI=0000 DI=0000
DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=0013 NV UP EI PL NZ NA PO NC
13C6:0013 CD21

INT

21

-t

AX=004C BX=0002 CX=0025 DX=0000 SP=FFFA BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=00A7 IP=107C NV UP DI PL NZ NA PO NC
00A7:107C 90

NOP

-q

6. 16 BIT SUBTRACTION
data segment
x dw 0006h
y dw 0002h
data ends
code segment
assume cs:code,ds:data
start:
mov ax,data
mov ds,ax
mov ax,x
mov bx,y
sub ax,bx
mov ax,4ch
int 21h
code ends
end start

OUTPUT:
C:\tasm>tasm sub.asm
Turbo Assembler Version 3.1 Copyright (c) 1988, 1992 Borland International

Assembling file: sub.asm


Error messages: None
Warning messages: None

Passes:

Remaining memory: 426k

C:\tasm>tlink sub.obj
Turbo Link Version 3.01 Copyright (c) 1987, 1990 Borland International
Warning: No stack

C:\tasm>debug sub.exe
-t

AX=13C5 BX=0000 CX=0025 DX=0000 SP=0000 BP=0000 SI=0000 DI=0000


DS=13B5 ES=13B5 SS=13C5 CS=13C6 IP=0003 NV UP EI PL NZ NA PO NC
13C6:0003 8ED8

MOV

DS,AX

-t

AX=13C5 BX=0000 CX=0025 DX=0000 SP=0000 BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=0005 NV UP EI PL NZ NA PO NC
13C6:0005 B400

MOV

AH,00

-t

AX=00C5 BX=0000 CX=0025 DX=0000 SP=0000 BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=0007 NV UP EI PL NZ NA PO NC
13C6:0007 A10000
-t

MOV

AX,[0000]

DS:0000=0006

AX=0006 BX=0000 CX=0025 DX=0000 SP=0000 BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=000A NV UP EI PL NZ NA PO NC
13C6:000A 8B1E0200

MOV

BX,[0002]

DS:0002=0002

-t

AX=0006 BX=0002 CX=0025 DX=0000 SP=0000 BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=000E NV UP EI PL NZ NA PO NC
13C6:000E 2BC3

SUB

AX,BX

-t

AX=0004 BX=0002 CX=0025 DX=0000 SP=0000 BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=0010 NV UP EI PL NZ NA PO NC
13C6:0010 B84C00

MOV

AX,004C

-t
AX=004C BX=0002 CX=0025 DX=0000 SP=0000 BP=0000 SI=0000 DI=0000
DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=0013 NV UP EI PL NZ NA PO NC
13C6:0013 CD21

INT

21

-t

AX=004C BX=0002 CX=0025 DX=0000 SP=FFFA BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=00A7 IP=107C NV UP DI PL NZ NA PO NC
00A7:107C 90

NOP

-q

7. 16 BIT MULTIPLICATION

data segment
x dw 0006h
y dw 0002h
data ends
code segment
assume cs:code,ds:data
start:
mov ax,data
mov ds,ax
mov ax,x
mov bx,y
mul bx
mov ax,4ch
int 21h
code ends
end start

OUTPUT:
Turbo Assembler Version 3.1 Copyright (c) 1988, 1992 Borland International

Assembling file: mul.asm


Error messages: None
Warning messages: None
Passes:

Remaining memory: 426k

C:\tasm>tlink mul.obj
Turbo Link Version 3.01 Copyright (c) 1987, 1990 Borland International
Warning: No stack

C:\tasm>debug mul.exe
-t

AX=13C5 BX=0000 CX=0025 DX=0000 SP=0000 BP=0000 SI=0000 DI=0000


DS=13B5 ES=13B5 SS=13C5 CS=13C6 IP=0003 NV UP EI PL NZ NA PO NC
13C6:0003 8ED8

MOV

DS,AX

-t

AX=13C5 BX=0000 CX=0023 DX=0000 SP=0000 BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=0005 NV UP EI PL NZ NA PO NC
13C6:0005 A10000

MOV

AX,[0000]

DS:0000=0006

-t

AX=0006 BX=0000 CX=0023 DX=0000 SP=0000 BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=0008 NV UP EI PL NZ NA PO NC
13C6:0008 8B1E0200

MOV

BX,[0002]

DS:0002=0002

-t

AX=0006 BX=0002 CX=0023 DX=0000 SP=0000 BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=000C NV UP EI PL NZ NA PO NC

13C6:000C F7E3

MUL

BX

-t

AX=000C BX=0002 CX=0023 DX=0000 SP=0000 BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=000E NV UP EI PL NZ NA PO NC
13C6:000E B84C00

MOV

AX,004C

-t

AX=004C BX=0002 CX=0023 DX=0000 SP=0000 BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=0011 NV UP EI PL NZ NA PO NC
13C6:0011 CD21

INT

21

-t
AX=004C BX=0002 CX=0023 DX=0000 SP=FFFA BP=0000 SI=0000 DI=0000
DS=13C5 ES=13B5 SS=13C5 CS=00A7 IP=107C NV UP DI PL NZ NA PO NC
00A7:107C 90

NOP

-q

8. 16 BIT DIVISION

data segment
x dw 0006h
y dw 0002h
data ends
code segment
assume cs:code,ds:data
start:

mov ax,data
mov ds,ax
mov ax,x
mov bx,y
div bx
mov ax,4ch
int 21h
code ends
end start

OUTPUT:
C:\tasm>tasm div.asm
Turbo Assembler Version 3.1 Copyright (c) 1988, 1992 Borland International

Assembling file: div.asm


Error messages: None
Warning messages: None
Passes:

Remaining memory: 426k

C:\tasm>tlink div.obj
Turbo Link Version 3.01 Copyright (c) 1987, 1990 Borland International
Warning: No stack

C:\tasm>debug div.exe

-t

AX=13C5 BX=0000 CX=0023 DX=0000 SP=0000 BP=0000 SI=0000 DI=0000


DS=13B5 ES=13B5 SS=13C5 CS=13C6 IP=0003 NV UP EI PL NZ NA PO NC
13C6:0003 8ED8

MOV

DS,AX

-t

AX=13C5 BX=0000 CX=0023 DX=0000 SP=0000 BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=0005 NV UP EI PL NZ NA PO NC
13C6:0005 A10000

MOV

AX,[0000]

DS:0000=0006

-t

AX=0006 BX=0000 CX=0023 DX=0000 SP=0000 BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=0008 NV UP EI PL NZ NA PO NC
13C6:0008 8B1E0200

MOV

BX,[0002]

DS:0002=0002

-t

AX=0006 BX=0002 CX=0023 DX=0000 SP=0000 BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=000C NV UP EI PL NZ NA PO NC
13C6:000C F7F3

DIV

BX

-t

AX=0003 BX=0002 CX=0023 DX=0000 SP=0000 BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=000E NV UP EI PL NZ AC PO NC
13C6:000E B84C00

MOV

AX,004C

-t

AX=004C BX=0002 CX=0023 DX=0000 SP=0000 BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=0011 NV UP EI PL NZ AC PO NC
13C6:0011 CD21

INT

21

-t
AX=004C BX=0002 CX=0023 DX=0000 SP=FFFA BP=0000 SI=0000 DI=0000
DS=13C5 ES=13B5 SS=13C5 CS=00A7 IP=107C NV UP DI PL NZ AC PO NC
00A7:107C 90

NOP

-q

9. 32 BIT ADDITION
data segment
x dw 0006h
y dw 0002h
z dw 0005h
w dw 0004h
data ends
code segment
assume cs:code,ds:data
start:
mov ax,data
mov ds,ax
mov ax,x
mov bx,y
mov cx,z

mov dx,w
add ax,bx
adc cx,dx
adc ax,cx
mov ax,4ch
int 21h
code ends
end start

OUTPUT:
C:\tasm>tasm ad.asm
Turbo Assembler Version 3.1 Copyright (c) 1988, 1992 Borland International

Assembling file: ad.asm


Error messages: None
Warning messages: None
Passes:

Remaining memory: 426k

C:\tasm>tlink ad.obj
Turbo Link Version 3.01 Copyright (c) 1987, 1990 Borland International
Warning: No stack

C:\tasm>debug ad.exe
-t

AX=13C5 BX=0000 CX=002F DX=0000 SP=0000 BP=0000 SI=0000 DI=0000


DS=13B5 ES=13B5 SS=13C5 CS=13C6 IP=0003 NV UP EI PL NZ NA PO NC
13C6:0003 8ED8

MOV

DS,AX

-t

AX=13C5 BX=0000 CX=002F DX=0000 SP=0000 BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=0005 NV UP EI PL NZ NA PO NC
13C6:0005 A10000

MOV

AX,[0000]

DS:0000=0006

-t

AX=0006 BX=0000 CX=002F DX=0000 SP=0000 BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=0008 NV UP EI PL NZ NA PO NC
13C6:0008 8B1E0200

MOV

BX,[0002]

DS:0002=0002

-t

AX=0006 BX=0002 CX=002F DX=0000 SP=0000 BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=000C NV UP EI PL NZ NA PO NC
13C6:000C 8B0E0400

MOV

CX,[0004]

DS:0004=0005

-t

AX=0006 BX=0002 CX=0005 DX=0000 SP=0000 BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=0010 NV UP EI PL NZ NA PO NC
13C6:0010 8B160600
-t

MOV

DX,[0006]

DS:0006=0004

AX=0006 BX=0002 CX=0005 DX=0004 SP=0000 BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=0014 NV UP EI PL NZ NA PO NC
13C6:0014 03C3

ADD

AX,BX

-t

AX=0008 BX=0002 CX=0005 DX=0004 SP=0000 BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=0016 NV UP EI PL NZ NA PO NC
13C6:0016 13CA

ADC

CX,DX

-t

AX=0008 BX=0002 CX=0009 DX=0004 SP=0000 BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=0018 NV UP EI PL NZ NA PE NC
13C6:0018 13C1

ADC

AX,CX

-t

AX=0011 BX=0002 CX=0009 DX=0004 SP=0000 BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=001A NV UP EI PL NZ AC PE NC
13C6:001A B84C00

MOV

AX,004C

-t

AX=004C BX=0002 CX=0009 DX=0004 SP=0000 BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=001D NV UP EI PL NZ AC PE NC
13C6:001D CD21
-t

INT

21

AX=004C BX=0002 CX=0009 DX=0004 SP=FFFA BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=00A7 IP=107C NV UP DI PL NZ AC PE NC
00A7:107C 90

NOP

-q

10. 32 BIT SUBTRACTION


data segment
x dw 0006h
y dw 0002h
z dw 0005h
w dw 0004h
data ends
code segment
assume cs:code,ds:data
start:
mov ax,data
mov ds,ax
mov ax,x
mov bx,y
mov cx,z
mov dx,w
sub ax,bx
sbb cx,dx
sbb ax,cx
mov ax,4ch

int 21h
code ends
end start

OUTPUT:
C:\tasm>tasm sb.asm
Turbo Assembler Version 3.1 Copyright (c) 1988, 1992 Borland International

Assembling file: sb.asm


Error messages: None
Warning messages: None
Passes:

Remaining memory: 426k

C:\tasm>tlink sb.obj
Turbo Link Version 3.01 Copyright (c) 1987, 1990 Borland International
Warning: No stack

C:\tasm>debug sb.exe
-t

AX=13C5 BX=0000 CX=002F DX=0000 SP=0000 BP=0000 SI=0000 DI=0000


DS=13B5 ES=13B5 SS=13C5 CS=13C6 IP=0003 NV UP EI PL NZ NA PO NC
13C6:0003 8ED8
-t

MOV

DS,AX

AX=13C5 BX=0000 CX=002F DX=0000 SP=0000 BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=0005 NV UP EI PL NZ NA PO NC
13C6:0005 A10000

MOV

AX,[0000]

DS:0000=0006

-t

AX=0006 BX=0000 CX=002F DX=0000 SP=0000 BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=0008 NV UP EI PL NZ NA PO NC
13C6:0008 8B1E0200

MOV

BX,[0002]

DS:0002=0002

-t

AX=0006 BX=0002 CX=002F DX=0000 SP=0000 BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=000C NV UP EI PL NZ NA PO NC
13C6:000C 8B0E0400

MOV

CX,[0004]

DS:0004=0005

-t

AX=0006 BX=0002 CX=0005 DX=0000 SP=0000 BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=0010 NV UP EI PL NZ NA PO NC
13C6:0010 8B160600

MOV

DX,[0006]

DS:0006=0004

-t

AX=0006 BX=0002 CX=0005 DX=0004 SP=0000 BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=0014 NV UP EI PL NZ NA PO NC
13C6:0014 2BC3
-t

SUB

AX,BX

AX=0004 BX=0002 CX=0005 DX=0004 SP=0000 BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=0016 NV UP EI PL NZ NA PO NC
13C6:0016 1BCA

SBB

CX,DX

-t

AX=0004 BX=0002 CX=0001 DX=0004 SP=0000 BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=0018 NV UP EI PL NZ NA PO NC
13C6:0018 1BC1

SBB

AX,CX

-t

AX=0003 BX=0002 CX=0001 DX=0004 SP=0000 BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=001A NV UP EI PL NZ NA PE NC
13C6:001A B84C00

MOV

AX,004C

-t

AX=004C BX=0002 CX=0001 DX=0004 SP=0000 BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=13C6 IP=001D NV UP EI PL NZ NA PE NC
13C6:001D CD21

INT

21

-t

AX=004C BX=0002 CX=0001 DX=0004 SP=FFFA BP=0000 SI=0000 DI=0000


DS=13C5 ES=13B5 SS=13C5 CS=00A7 IP=107C NV UP DI PL NZ NA PE NC
00A7:107C 90
-q

NOP

You might also like