ASSEMBLY LANGUAGE PROGRAMMING

Monday, January 26, 2009

8086 Programming: TITLE PROGRAM TO ADD TWO NUMBERS .MODEL SMALL .STACK 100H .DATA MSG1 DB "Enter first number:$" MSG2 DB "Enter Second Number:$" MSGRES DB "The sum is:$" NUM1 DB ? NUM2 DB ? RESDGT1 DB ? RESDGT2 DB ? .CODE MAIN PROC MOV AX,@DATA ;initialize DS MOV DS,AX LEA DX,MSG1 ;display prompt for first num MOV AH,9H INT 21H MOV AH,01H ;read NUM1 INT 21H MOV NUM1,AL MOV AH,02H ;Go to new line using carriage return and linfeed MOV DL,0DH INT 21H MOV DL,0AH INT 21H LEA DX,MSG2 ;display prompt for number2 MOV AH,9H INT 21H MOV AH,01H ;read NUM2 INT 21H MOV NUM2,AL MOV DL,NUM1 ADD DL,NUM2 SUB DL,60H ;convert ASCII to num MOV AH,0H ; seperate digits LSD in AH MSD in AL MOV AL,DL MOV DL,0Ah DIV DL ADD AH,30H ;convert num to ASCII ADD AL,30H MOV RESDGT1,AL MOV RESDGT2,AH ;MOV AH,02H ;Go to new line using carriage return and linfeed ;MOV DL,0DH ;INT 21H ;MOV DL,0AH ;INT 21H CALL GONEWLINE LEA DX,MSGRES ;display prompt for result MOV AH,9H INT 21H MOV AH,02H ;display result MOV DL,RESDGT1 CMP DL,30H JZ DISP INT 21H DISP:MOV DL,RESDGT2 INT 21H MOV AH,4CH ;Exit to DOS INT 21H GONEWLINE PROC MOV AH,02H MOV DL,0DH INT 21H MOV DL,0AH INT 21H RET GONEWLINE ENDP MAIN ENDP END MAIN

0 comments:

Visitors

PlugIn.ws - Free Hit Counter, Web Site Statistics, Traffic Analysis

  © Blogger template Leaving by Ourblogtemplates.com 2008

Back to TOP