8086汇编程序求助
本帖最后由 NIMITIZ 于 2021-4-27 11:26 编辑想练习一个8086汇编,题目:将数据0FFH,02H,0FCBH,03H,1000H,0F3H中大于等于0FFH的数据存向以地址100H为起始的内存中,小于0FFH的数据存向以地址200H为起始的内存中
自己写了如下程序,但在调试时,地址076A:0200到076A:0205的数据出现异常,调试结果如下图,弄不明白为什么会这样,希望有大佬能来指点迷津。
DATA SEGMENT
X DW0FFH,02H,0FCBH,03H,1000H,0F3H
ORG 100H
BIG DW 6 DUP(?)
ORG 200H
SMALL DW 6 DUP(?)
DATA ENDS
CODE SEGMENT
ASSUMECS:CODE,DS:DATA
START:MOV AX,DATA
MOV DS,AX
MOV CX,6
MOV SI,0
mov DI,0
mov BP,0
S: MOV BX,X[SI]
MOV DX,0FFH
CMP BX,DX
JNC L1
MOV SMALL[DI],DX
INC DI
INC DI
INC SI
INC SI
JMP L2
L1:
MOV BIG[BP],BX
INC BP
INC BP
INC SI
INC SI
L2: LOOP S
movah,4ch
int 21h
CODE ENDS
END START MOV SMALL,DX,这里的DX应该是BX 错误也太明显了 jkj 发表于 2021-4-26 21:23
MOV SMALL,DX,这里的DX应该是BX
昨晚找到错误了,在JNC 的下一行加上MOV DX,BX就可以了,还是很感谢你的解答{:1_919:}
页:
[1]