- 1、本文档共34页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
汇编第6章xk课件
第六章;【课前思考】 ;【难重点】 ;【知识点】 ;第一节 子程序的设计方法;6.1.1 过程定义伪操作 ;6.1.1 过程定义伪操作 ;6.1.1 过程定义伪操作 ;6.1.1 过程定义伪操作 ;6.1.2 子程序的调用和返回 ;6.1.3 保存与恢复寄存器 ;例如:写一个程序要求从键盘取得一个十进制数,然后以十六进制形式在屏幕上显示出来。;00 decihex segment
01 assume cs:decihex
1 main proc far
2 repeat:
3 call decibin :
4 call crlf
5 call binihex
6 call crlf
7 jmp repeat
8 main endp
;0 decibin proc near ;输入的十进数变成二进制
1 mov bx,0 ; 置0
2 newchar: ;循环入口,输入新字符开始
3 mov ah,1 ;输入一个新位数放AL中
4 int 21h ;中断调用21H P471
5 sub al,30h ;数字为ASCII表示,还原成原数减30
6 jl exit ;减30后小于0表示不是数字,结束
7 cmp al,9d ;减30后再与9数比,
8 jg exit ;大于9表示不是数字,结束
9 cbw ;小于9表示是数字,扩字后放AX中
10 xchg ax,bx ;输入在AL数字与BX交换,注BX第二次为上次内容
11 mov cx,10d ;CX置10
12 mul cx ;AX中数乘10
13 xchg ax,bx ;乘后再与BX交换,即BX中数为乘后的数
14 add bx,ax ;每次与上次乘10后再与本次内容相加
15 jmp newchar ;循环出口
16 exit:
17 ret
18 decibin endp;1 binihex proc near ;二进数变十六进数
2 mov ch,4 ;置于CH=4,大循环4次,BX中数被移4次
3 rotate: mov cl,4 ;循环入口
4 rol bx,cl ;右移一次BX的4位,即BX最高二进制4位移最低4位,也就最高一位十六进移到最低一位
5 mov al,bl ;把BX最低8位移AL
6 and al,0fh ; 保留AL低4位(一位十六进数)
7 add al,30h ;把一般数变成 ASCII数
8 cmp al,3ah ;是否是0-9的数,
9 jl printit ; 是0-9的数则转去显示
10 add al,7h ;不是则为A-F的数,再加7后显示
11 printit:
12 mov dl,al ;显示AL中的数(低4位二进制数=1位十六进制数
13 mov ah,2 ;P471
14 int 21h
15 dec ch ;大循环减一次
16
文档评论(0)