如何编制一个程序,在DA_WORD数据区中找出最大值、最小值,并且以十六进制显示出来?
时间:2011-05-05
来源:互联网
如何编制一个程序,在DA_WORD数据区中找出最大值、最小值,并且以十六进制显示出来?
作者: blueshine1 发布时间: 2011-05-05
引用楼主 blueshine1 的回复:
如何编制一个程序,在DA_WORD数据区中找出最大值、最小值,并且以十六进制显示出来?
如何编制一个程序,在DA_WORD数据区中找出最大值、最小值,并且以十六进制显示出来?
Assembly code
assume cs:code,ds:data data segment array dw 1234h,01h,1223h,0h,0f99h;要测试的数据 max dw 0 ;初始化max min dw 0 ;初始化min m1 db 'Max=$' ; m2 db 'Min=$' ;相关提示信息 data ends code segment start: mov ax,data mov ds,ax mov cx,lengthof array ;获取数组个数 mov bx,offset array ;获取数组首地址 s: mov ax,[bx] ;开始遍历比较 cmp ax,max ; jg da cmp ax,min jl xiao jmp jx da: mov max,ax ;将大数存放到max单元 jmp jx xiao: mov min,ax ;将小鼠存放到min单元 jx: add bx,2 ;指向下一个数据 loop s mov dx,offset m1 ;打印提示信息1 mov ah,9 int 21h mov dx,max ;打印max call disphex call crlf ;换行 mov dx,offset m2 ;打印提示信息2 mov ah,9 int 21h mov dx,min ;打印min call disphex mov ah,4ch int 21h ;换行子程序 crlf proc uses dx ax mov ah,2 mov dl,13 int 21h mov dl,10 int 21h ret crlf endp ;显示十六进制子程序 disphex proc uses dx mov cx,4 d1: push cx mov cl,4 rol dx,cl push dx and dx,0fh cmp dl,10 jb d10 add dl,37h mov ah,2 int 21h jmp jx2 d10: add dl,30h mov ah,2 int 21h jx2: pop dx pop cx loop d1 mov dl,'H' mov ah,2 int 21h ret disphex endp ; code ends end start
作者: masmaster 发布时间: 2011-05-05
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28