微机原理及接口技术第5章.pptVIP

  1. 1、本文档共63页,可阅读全部内容。
  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文档。上传文档
查看更多
微机原理及接口技术第5章

第 5 章 教学重点 综合应用第3章硬指令和第4章伪指令,第5章从程序结构角度展开程序设计,重点掌握: 分支结构程序设计 循环结构程序设计 子程序结构程序设计 程序结构 编制汇编语言程序的步骤: 1、分析题意确定算法 2、根据算法画出程序框图 3、根据框图编写程序 4、上机调试程序 程序的基本结构有: 顺序、分支和循环和子程序4种 5.1 顺序程序设计 顺序程序完全按指令书写的前后顺序执行每一条指令,是最基本、最常见的程序结构 例5.1 DATA SEGMENT A DW 5F73H B DW 98CDH C DW ? DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START: MOV AX,DATA MOV DS,AX MOV AX,A ADD AX,B MOV C,AX MOV AH,4CH INT 21H CODE ENDS END START 例题 代码转换-1/2 ;查表法,实现一位16进制数转换为ASCII码显示 data segment ASCII db 30h,31h,32h,33h,34h,35h db 36h,37h,38h,39h ;0~9的ASCII码 db 41h,42h,43h,44h,45h,46h ;A~F的ASCII码 hex db 0bh ;任意设定了一个待转换的一位16进制数 data ends 例题 代码转换-2/2 mov bx,offset ASCII ;BX指向ASCII码表 mov al,hex ;AL取得一位16进制数,正是 ASCII码表中位移 and al,0fh ;只有低4位是有效的,高4位清0 xlat ;换码:AL←DS:[BX+AL] mov dl,al ;入口参数:DL←AL mov ah,2 ;02号DOS功能调用 int 21h ;显示一个ASCII码字符 5.2 分支程序设计 分支程序根据条件是真或假决定执行与否 判断的条件是各种指令,如CMP、TEST等执行后形成的状态标志 转移指令Jcc和JMP可以实现分支控制 单分支程序设计 条件成立跳转,否则顺序执行分支语句体;注意选择正确的条件转移指令和转移目标地址 例题 无符号数除以2 ;将AX中存放的无符号数除以2,如果是奇数,则加1后除以2 test ax,01h ;测试AX最低位 jz even ;最低位为0:AX为偶数 add ax,1 ;最低位为1:AX为奇数,需要加1 even: shr ax,1 ;AX←AX÷2 例5.2 将一字节二进制数据以16进制显示出来 mov dl,a jbe next1 mov cl,4 add dl,7 shr dl,cl add dl,30h cmp dl,’9’ next1:mov ah,2 add dl,30h int 21h cmp dl,’9’ mov dl,a jbe next2 and dl,0fh add dl,7 next2:int 21h int 21h mov ah,4ch 双分支程序设计 条件成立跳转执行第2个分支语句体,否则顺序执行第1个分支语句体。注意第1个分支体后一定要有一个JMP指令跳到第2个分支体后 例题 显示BX最高位 shl bx,1 ;BX最高位移入CF jc one ;CF=1,即最高位为1,转移 mov dl,30h ;CF=0,即最高位为0,DL←’0’ jmp two ;一定要跳过另一个分支体 one: mov dl,31h;DL←’1’ two: mov ah,2 int 21h;显示 例:在串中查找特定字符,找到显示‘Y’,否则 ‘N’ code segment assume cs:code,ds:data strart: mov ax,data mov es,ax lea di,offset string mov cx,n mov ah,1 int 21h

文档评论(0)

153****9595 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档