用emu8086实现下面程序,为什么运行有错?
程序是实现符号函数DATA SEGMENT
y1 DB 1
y2 DB 0
y3 DB -1
y DB ?;(此处存放判定结果)
x DB ?;(此处设定要用的x,代换调“?”即可)
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START:MOV AX,DATA
MOV DS,AX
MOV AL,x
SAL AL,1;算术左移指令,左移1位将最高位符号标志位移进符号位cf
JNC S1;CF是否等于1,不等于1,说明是正数
MOV AL,x
CMP AL,0;重新赋值,判断是否等于0
JC S2;等于则跳转,否则
SAL AL,1
JC S3;CF是否等于1,等于1,说明是负数
JMP DONE
S1:MOV AH,y1
MOV y,AH
JMP DONE
S2:MOV AH,y2
MOV y,AH
JMP DONE
S3:MOV AH,y3
MOV y,AH
JMP DONE
DONE: MOV AH,4CH
INT 21H
CODE ENDS
END START
???
感谢大佬!
我想问下为什么数据段定义 Y DB ?为什么会出错?
追答好像这个模拟器不支持❓
追问我的软件是emu8086