主题:[讨论]走投无路拉,大虾们救我啊,帮忙改一下,感激不尽
好不容易编出来了,但debug后出来是02,01,04,13,不对啊,应该是02,01,04,03吧,大虾帮忙修改一下,明天要用的,感激不尽
题目:
编写一个把从packed开始的16位组合BCD数变成分离BCD数,并把结果存放在从unpaked开始的单元里的程序段
程序:
data segment
packed db 12h,34h
unpacked db 8 dup(0)
data ends
code segment
assume cs:code,ds:data
main proc far
start:
push ds
sub ax,ax
mov ax,data
mov ds,ax
MOV DX,8
MOV CL,4
MOV SI,0
mov di,si
XOR Ax,AX
CONVERT:MOV AL,BYTE PTR[SI+PACKED]
SHL ax,CL
SHR al,CL
MOV WORD PTR[DI+UNPACKED],AX
ADD DI,2
inc si
dec dx
JNZ CONVERT
jmp a1
a1:int 21h
main endp
code ends
end start
题目:
编写一个把从packed开始的16位组合BCD数变成分离BCD数,并把结果存放在从unpaked开始的单元里的程序段
程序:
data segment
packed db 12h,34h
unpacked db 8 dup(0)
data ends
code segment
assume cs:code,ds:data
main proc far
start:
push ds
sub ax,ax
mov ax,data
mov ds,ax
MOV DX,8
MOV CL,4
MOV SI,0
mov di,si
XOR Ax,AX
CONVERT:MOV AL,BYTE PTR[SI+PACKED]
SHL ax,CL
SHR al,CL
MOV WORD PTR[DI+UNPACKED],AX
ADD DI,2
inc si
dec dx
JNZ CONVERT
jmp a1
a1:int 21h
main endp
code ends
end start