初学者,如何输出结果?

delphi6csdn 2005-10-17 09:55:12
data segment
x dw 1234h
y dw 4321h
z dw 3421h
max dw ?
data ends
stack segment stack
db 100 dup(?)
stack ends
code segment
assume cs:code,ds:data,ss:stack
begin: mov ax,data
mov ds,ax
mov ax,x
cmp ax,y
jg xgz
mov ax,y
cmp ax,z
jg next
ztoax: mov ax,z
jmp next
xgz: cmp ax,z
jng ztoax
next: mov max,ax
mov ah,4ch
int 21h
code ends
end begin

求3个数中的最大数,怎么输出结果?
...全文
153 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
NeoZero 2005-10-19
  • 打赏
  • 举报
回复
程序短的话就用DEBUG的T命令慢慢调,出结果时查看AX的内容就可以了。
zqn82 2005-10-18
  • 打赏
  • 举报
回复
data segment
x dw 1234h
y dw 4321h
z dw 3421h
max dw ?
data ends
stack segment stack
db 100 dup(?)
stack ends
code segment
assume cs:code,ds:data,ss:stack
begin: mov ax,data
mov ds,ax
mov ax,x
cmp ax,y
jg xgz
mov ax,y
cmp ax,z
jg next
ztoax: mov ax,z
jmp next
xgz: cmp ax,z
jng ztoax
next: mov max,ax
;zqn82 add code
mov cl,4
mov dx, 4
show_char:
rol ax,cl
push ax
push dx

and ax, 0Fh
.IF (ax < 10)
add al, '0'
.ELSE
add al, 'A' - 10
.ENDIF
mov ah, 0Eh
mov bx, 2
int 10h

pop dx
pop ax
dec dx
jne show_char
;zqn82 add code

mov ah,4ch
int 21h
code ends
end begin
注意:加上上述代码就可以显示最大数的十六进制内容了!!!!
zqn82 2005-10-18
  • 打赏
  • 举报
回复
data segment
x dw 1234h
y dw 4321h
z dw 3421h
max dw ?
data ends
stack segment stack
db 100 dup(?)
stack ends
code segment
assume cs:code,ds:data,ss:stack
begin: mov ax,data
mov ds,ax
mov ax,x
cmp ax,y
jg xgz
mov ax,y
cmp ax,z
jg next
ztoax: mov ax,z
jmp next
xgz: cmp ax,z
jng ztoax
next: mov max,ax
mov cl,4
mov dx, 4
show_char:
rol ax,cl
push ax
push dx

and ax, 0Fh
.IF (ax < 10)
add al, '0'
.ELSE
add al, 'A' - 10
.ENDIF
mov ah, 0Eh
mov bx, 2
int 10h

pop dx
pop ax
dec dx
jne show_char
mov ah,4ch
int 21h
code ends
end begin
delphi6csdn 2005-10-18
  • 打赏
  • 举报
回复
谢谢zqn82,不知有更简短的方法吗?
fhb13 2005-10-17
  • 打赏
  • 举报
回复
要嘛用调试软件边调试边看
要嘛就是自己加一个中断 把结果输出

21,459

社区成员

发帖
与我相关
我的任务
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
  • 汇编语言
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧