代码是:
curl
在第3行说错误
未定义符号:
.model small .data ar db ffh .code mov ax,@data mov ds,ax mov ah,00h mov al,ar mov bl,40h clc adc ax,bx mov ah,4ch int 21h end
我不明白它是如何识别ffh
只是一个十六进制数。
a0h
是否会在没有携带的情况下存入携带或总和的金额。因为我很困惑ax
是否通过自己的添加或任何先前影响进位标志的指令来设置CF. 答案 0 :(得分:1)
使用0ffh,因为如果您只写ffh,汇编程序会混淆它的数字或变量名。
答案 1 :(得分:-1)
使用0ffh代替ffh,你会得到。
.model small
.stack 64
。数据
ar db 0ffh
.CODE
主要远程
mov ax,@ data
mov ds,ax
mov啊,00h
mov al,ar
mov bx,40h
adc ax,bx
mov啊,4c00h
int 21h
main endp
结束主要
ax将存储到ffffh,如果你在ax中添加两个数字,结果大于ffffh(十进制数为65535),那么carry将包含msb数字。
例如:
mov ax,1234
添加ax,2345
;然后ax将有1234 + 2345 = 3579
但是如果
mov ax,fffeh
add ax,03h
;然后ax将有0001并且进位标志将包含1。