(精)汇编语言05.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第五章 顺序结构程序 教学重点 从本章开始,从程序结构角度展开学习8086常用指令的功能及应用。本章重点掌握: 80x86 传送、 算术运算、逻辑操作、 移位操作等指令 程序设计的步骤 程序的基本控制结构 主要内容 5.1 程序设计的步骤 5.2 流程图的应用 5.3 程序的基本控制结构 5.4 数据传送指令 5.5 算术运算指令 5.6 逻辑操作指令 5.7 移位操作指令 5.8 状态标志位操作指令 5.9 简单的I/O功能调用 5.10 顺序结构程序举例 5.1 程序设计的步骤 5.2 流程图的应用 顺序结构 分支与循环结构 5.3 程序的基本控制结构 5.3.1 顺序程序设计 顺序程序完全按指令书写的前后顺序执行每一条指令,是最基本、最常见的程序结构。 汇编语言指令格式(复习) 由4部分组成: [标号[:]]指令助记符 目的操作数,源操作数[;注释] 指令操作数的表达(补充) r8——任意一个8位通用寄存器。 AH AL BH BL CH CL DH DL r16——任意一个16位通用寄存器。 AX BX CX DX SI DI BP SP reg——代表r8或r16。 seg——段寄存器。 CS DS ES SS 指令操作数的表达(补充) m8——一个8位存储器操作数单元(所有主存寻址方式)。 m16——一个16位存储器操作数单元(所有主存寻址方式)。 mem——代表m8或m16。 指令操作数的表达(补充) i8——一个8位立即数 i16——一个16位立即数 imm——代表i8或i16 dest——目的操作数 src——源操作数 5.4 数据传送指令 MOV(move)传送 传送指令MOV(move) 把一个字节或字的操作数从源地址传送至目的地址 例5.1:立即数传送 mov al,4 ;al←4,字节传送 mov cx,0ffh ;cx←00ffh,字传送 mov si,200h ;si←0200h,字传送 mov byte ptr [si],0ah ;byte ptr 说明是字节操作 mov word ptr [si+2],0bh ;word ptr 说明是字操作 例5.2:寄存器传送 mov ax,bx ;ax←bx,字传送 mov ah,al ;ah←al,字节传送 mov ds,ax ;ds←ax,字传送 mov [si],al ;[si]←al,字节传送 例5.3:存储器传送 mov al,[bx] mov dx,[bp] ;dx←ss:[bp] mov es,[si] ;es←ds:[si] 例5.5:段寄存器传送 mov [si],ds mov ax,es ;ax←es mov ds,ax ;ds←ax←es MOV指令传送功能限制 MOV也并非任意传送 非法传送种种 两个操作数的类型不一致 例如源操作数是字节,而目的操作数是字;或相反 两个操作数不能都是存储器 传送指令很灵活,但主存之间的直接传送却不允许 段寄存器的操作有一些限制 段寄存器属专用寄存器,对他们的操作能力有限 两个操作数的类型要一致 绝大多数双操作数指令,除非特别说明,目的操作数与源操作数必须类型一致,否则为非法指令 MOV AL,050AH ;非法指令:050Ah为字,而AL为字节 寄存器,本身有明确的字节或字类型,有寄存器参与的指令其操作数类型就是寄存器的类型 对于存储器单元与i8立即数同时作为操作数的情况,必须显式指明;byte ptr指示字节类型,word ptr指示字类型 mov [si],0ah mov word ptr [si],0ah mov [si],0a000h 两个操作数不能都是存储器 8086指令系统不允许两个操作数都是存储单元(除串操作指令),要实现这种传送,可通过寄存器间接实现 mov ax,buffer1 ;ax←buffer1(将buffer1内容送ax) mov buffer2,ax ;buffer2←ax ;这里buffer1和buffer2是两个字变量 ;实际表示直接寻址方式 要小心段寄存器的操作 不允许立即数传送给段寄存器 MOV DS,100H ;非法指令:立即数不能传送段寄存器 不允许直接改变CS值 MOV CS,[SI] ;不允许使用的指令 不允许段寄存器之间的直接数据传送 MOV DS,ES ;非法指令:不允许段寄存器间传送 MOV(move)传送指令(思考) 判断下列各条语句的对错: DATA DB 10H MOV [SI],DATA MOV AX,CS MOV DS,1000H MOV BX,[BX] MOV AX,DL MOV DS,CS MOV [SI],10H 堆

文档评论(0)

xiaofei2001128 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档