ibm_汇编 第六章课件.pptVIP

  1. 1、本文档共27页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
ibm_汇编 第六章课件

第六章 子程序结构;1. 过程定义伪操作;code segment main proc far …… call subr1 …… ret main endp subr1 proc near …… ret subr1 endp code ends;子程序调用:隐含使用堆栈保存返回地址 call near ptr subp (1) 保存返回地址 (2) 转子程序 call far ptr subp (1) 保存返回地址 (2) 转子程序 子程序返回:ret;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后显示 1

文档评论(0)

xcs88858 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档