當前位置:星座運勢大全官網 - 八字算命 - 試著寫壹個匯編語言程序,完成兩個1十進制數的加法功能。

試著寫壹個匯編語言程序,完成兩個1十進制數的加法功能。

;下面的程序是壹個16位的匯編,編譯後運行正確。

;程序名:加法。空對地導彈

加法線段

假設CS:加法,DS:加法

ORG 100H

開始:JMP開始

First_Num DB '第壹個數字:$ '

Second_Num DB '第二個數字:$ '

Addi_Sum DB '總和是'

SumASCII DB 2 DUP('0 '),' $ ';兩個數之和的兩位ASCII數。

Exit_Mark DB 0

;子程序

GLOBAL Get _ Num:NEAR;從鍵盤接受壹個1數字。

Get_Num Proc附近

MOV啊,9

INT 21H

輸入:MOV AH,1

INT 21H

CMP AL,27;Esc?

JZ集_出口

CMP AL,' 0 '

JB輸入hr

CMP AL,' 9 '

JG輸入

還有AL,0FH

浸水使柔軟

set _ Exit:INC Exit _ Mark;設置退出標誌

浸水使柔軟

Get_Num結束

開始:MOV斧,3

INT 10H;將視頻顯示模式設置為80x25 16彩色文本模式。

LEA DX,First _ Num提示輸入第壹個1數字字符串地址。

調用Get _ Num從鍵盤接受壹個1數字。

CMP Exit_Mark,1

JZ出口_過程;如果設置了退出標誌,程序結束。

MOV·蘇馬西伊;保存第壹個1數字。

MOV啊,3

XOR有限公司

INT 10H;獲取光標位置

INC DH行數增加了1

XOR DL,DL;零列號

XOR有限公司

MOV啊,2

INT 10H;將光標位置設置為下壹行的第壹列。

LEA DX,Second _ Num提示輸入第二個1數字字符串地址。

調用Get _ Num接受鍵盤上的第二個1數字。

加AL,SumASCII加兩個1的數字。

化學生物戰(Chemical and Biological Warfare)

MOV BL,10

DIV BL當總和除以10時,商存儲在AL中,余數存儲在AH中。

或者AX,3030H將商和余數轉換成ASCII碼

CMP AL,' 0 '

JG Disp _ Sum;尚若>:0,顯示兩個數之和。

MOV·艾爾,”;如果商=0,十個空格。

顯示總和:

MOV文字PTR SumASCII,AX

MOV啊,3

XOR有限公司

INT 10H;獲取光標位置

INC DH行數增加了1

INC DH行數增加了1

XOR DL,DL;零列號

XOR有限公司

MOV啊,2

INT 10H;將光標位置設置為下壹行的第壹列。

LEA DX,Addi _ Sum顯示兩個數的和。

MOV啊,9

INT 21H

Exit_Proc:MOV AX,4C00H結束程序

INT 21H

加法結束

結束開始