加法(彙編源程式用語)

本詞條是多義詞,共4個義項
更多義項 ▼ 收起列表 ▲

加法,彙編源程式用語。

執行下面的指令:
MOV A, #86H
ADD A, #47H
結果:(A)=0CDH,CY=0,AC=0
所得結果並不是BCD碼,若接著執行以下指令:
DA A
則結果:(A)=33H,CY=1,AC=1
加數分別放在R2,R3中,將R2和R3相加的和放在R7中。
ADD: MOV A,R3 ;將被加數R3存入A中
ACALL CMPT ;調用求補函式CMPT求R3的(存放在A中)補碼
MOV R3,A ;又將R3的補碼放入R3中
MOV A,R2 ;將加數R2存入A中
ACALL CMPT ;調用求補函式CMPT求R2的補碼,R2的補碼存放在A中
ADD A,R3 ;將二者的補碼相加
JB OV,OVER ;如果溢出標誌位OV為一,即溢出(即判斷是否超出數值表示範圍),則跳轉到OVER,即結束 ,
ACALL CMPT ;因為補碼相加之後還是補碼,為了得到相加之和的原碼,還需要求補
MOV R7,A ;將A中的最終結果存放在R7中
OVER: RET ;偽指令RET沒有什麼實際意義
CMPT: CPL A ;對A中的內容逐位求反
INC A ;A中的內容加1

相關詞條

熱門詞條

聯絡我們