第4章基本汇编语言程序设计ppt课件.ppt

第4章基本汇编语言程序设计ppt课件.ppt

ID:58700718

大小:1.10 MB

页数:90页

时间:2020-10-04

第4章基本汇编语言程序设计ppt课件.ppt_第1页
第4章基本汇编语言程序设计ppt课件.ppt_第2页
第4章基本汇编语言程序设计ppt课件.ppt_第3页
第4章基本汇编语言程序设计ppt课件.ppt_第4页
第4章基本汇编语言程序设计ppt课件.ppt_第5页
资源描述:

《第4章基本汇编语言程序设计ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第4章教学重点综合应用第2章硬指令和第3章伪指令,第4章从程序结构角度展开程序设计,重点掌握:分支结构程序设计循环结构程序设计子程序结构程序设计4.1顺序程序设计顺序程序完全按指令书写的前后顺序执行每一条指令,是最基本、最常见的程序结构例4.1计算例4.2移位例题代码转换例4.1.modelsmall.stack.dataXdw5Ydw6Zdw7Wdw?.code.startupmovax,Xaddax,Yaddax,ZmovW,ax.exit0end例4.2-1/2.dataqvardq1234567887654321h.codemoval,byteptrqvar

2、[6]movbyteptrqvar[7],almoval,byteptrqvar[5]movbyteptrqvar[6],almoval,byteptrqvar[4]movbyteptrqvar[5],almoval,byteptrqvar[3]movbyteptrqvar[4],al图示例4.2-2/2moval,byteptrqvar[2]movbyteptrqvar[3],almoval,byteptrqvar[1]movbyteptrqvar[2],almoval,byteptrqvar[0]movbyteptrqvar[1],almovbyteptrqva

3、r[0],01234567887654321h3456788765432100h移位后图示64位数据左移8位123456788765432100qvar[0]qvar[1]qvar[2]qvar[3]qvar[4]qvar[5]qvar[6]qvar[7]例题代码转换-1/2;查表法,实现一位16进制数转换为ASCII码显示.modelsmall.stack256.dataASCIIdb30h,31h,32h,33h,34h,35hdb36h,37h,38h,39h;0~9的ASCII码db41h,42h,43h,44h,45h,46h;A~F的ASCII码hexd

4、b0bh;任意设定了一个待转换的一位16进制数例题代码转换-2/2.code.startupmovbx,offsetASCII;BX指向ASCII码表moval,hex;AL取得一位16进制数,正是ASCII码表中位移andal,0fh;只有低4位是有效的,高4位清0xlat;换码:AL←DS:[BX+AL]movdl,al;入口参数:DL←ALmovah,2;02号DOS功能调用int21h;显示一个ASCII码字符.exit0end4.2分支程序设计分支程序根据条件是真或假决定执行与否判断的条件是各种指令,如CMP、TEST等执行后形成的状态标志转移指令Jcc和

5、JMP可以实现分支控制;还可以采用MASM6.x提供的条件控制伪指令实现单分支:求绝对值等双分支:例4.3等多分支:例4.4等单分支程序设计条件成立跳转,否则顺序执行分支语句体;注意选择正确的条件转移指令和转移目标地址第4章例题求绝对值;计算AX的绝对值cmpax,0jnsnonneg;分支条件:AX≥0negax;条件不满足,求补nonneg:movresult,ax;条件满足;计算AX的绝对值cmpax,0jlyesneg;分支条件:AX<0jmpnonnegyesneg:negax;条件不满足,求补nonneg:movresult,ax;条件满足GoodBad

6、例题无符号数除以2;将AX中存放的无符号数除以2,如果是奇数,则加1后除以2testax,01h;测试AX最低位jzeven;最低位为0:AX为偶数addax,1;最低位为1:AX为奇数,需要加1even:rcrax,1;AX←AX÷2;如果采用SHR指令,则不能处理AX=FFFFH的特殊情况双分支程序设计条件成立跳转执行第2个分支语句体,否则顺序执行第1个分支语句体。注意第1个分支体后一定要有一个JMP指令跳到第2个分支体后第4章例题显示BX最高位shlbx,1;BX最高位移入CFjcone;CF=1,即最高位为1,转移movdl,’0’;CF=0,即最高位为0,

7、DL←’0’jmptwo;一定要跳过另一个分支体one:movdl,’1’;DL←’1’two:movah,2int21h;显示对比双分支程序改为单分支程序例题显示BX最高位shlbx,1;BX最高位移入CFjncone;CF=0,即最高位为0,转移movdl,’1’;CF=1,即最高位为1,DL←’1’jmptwo;一定要跳过另一个分支体one:movdl,’0’;DL←’0’two:movah,2int21h;显示双分支程序改为单分支程序对比例题显示BX最高位movdl,’0’;DL←’0’shlbx,1;BX最高位移入CFjnctwo;CF=0,最高位为0

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。