版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、2.3 数据传送类指令,数据传送是计算机中最基本、最重要的一种操作,传送指令也是最常使用的一类指令 传送指令把数据从一个位置传送到另一个位置 除标志寄存器传送指令外,均不影响标志位 重点掌握 MOV XCHG XLAT PUSH POP LEA,2.3.1 通用数据传送指令,提供方便灵活的通用传送操作 有3条指令 MOV XCHG XLAT,MOV,XCHG,XLAT,1. 传送指令MOV(move),把一个字节或字的操作数从源地址传送至目的地址,MOV reg/mem,imm ;立即数送寄存器或主存,MOV reg/mem/seg,reg ;寄存器送(段)寄存器或主存,MOV reg/seg
2、,mem ;主存送(段)寄存器,MOV reg/mem,seg ;段寄存器送寄存器或主存,演示,MOV指令立即数传送,mov cl,4;cl4,字节传送 mov dx,0ffh;dx00ffh,字传送 mov si,200h;si0200h,字传送 mov bvar,0ah;字节传送 ;假设bvar是一个字节变量,定义如下:bvar db 0 mov wvar,0bh;字传送 ;假设wvar是一个字变量,定义如下:wvar dw 0,明确指令是字节操作还是字操作,MOV指令寄存器传送,mov ah,al;ahal,字节传送 mov bvar,ch;bvarch ,字节传送 mov ax,bx;
3、axbx,字传送 mov ds,ax;dsax,字传送 mov bx,al;bxal,字节传送,寄存器具有明确的字节和字类型,MOV指令存储器传送,mov al,bx;alds:bx mov dx,bp;dxss:bp+0 mov dx,bp+4;dxss:bp+4 mov es,si;esds:si,不存在存储器向存储器的传送指令,MOV指令段寄存器传送,mov si,ds mov ax,ds;axds mov es,ax;esaxds,对段寄存器的操作不灵活,MOV指令传送功能图解,MOV指令也并非任意传送!,非法指令的主要现象: 两个操作数的类型不一致 无法确定是字节量还是字量操作 两个
4、操作数都是存储器 段寄存器的操作有一些限制,非法指令两个操作数类型不一致,在绝大多数双操作数指令中,目的操作数和源操作数必须具有一致的数据类型,或者同为字量,或者同为字节量,否则为非法指令 MOV AL, 050AH;非法指令,修正: ;mov ax,050ah MOV SI, DL;非法指令,修正: ;mov dh,0 ;mov si,dx,非法指令无法确定是字节量还是字量操作,当无法通过任一个操作数确定是操作类型时,需要利用汇编语言的操作符显式指明 MOV BX+SI, 255;非法指令,修正: ;mov byte ptr bx+si,255 ;byte ptr 说明是字节操作 ;mov
5、word ptr bx+si,255 ;word ptr 说明是字操作,非法指令两个操作数都是存储器,8088指令系统除串操作指令外,不允许两个操作数都是存储单元(存储器操作数) MOV buf2, buf1;非法指令,修正: ;假设buf2和buf1是两个字变量 ;mov ax,buf1 ;mov buf2,ax ;假设buf2和buf1是两个字节变量 ;mov al,buf1 ;mov buf2,al,非法指令段寄存器的操作有一些限制,8088指令系统中,能直接对段寄存器操作的指令只有MOV等个别传送指令,并且不灵活 MOV DS, ES;非法指令,修正: ;mov ax,es ;mov
6、ds,ax MOV DS, 100H;非法指令,修正: ;mov ax,100h ;mov ds,ax MOV CS, SI;非法指令 ;指令存在,但不能执行,2. 交换指令XCHG(exchange),把两个地方的数据进行互换,寄存器与寄存器之间对换数据 寄存器与存储器之间对换数据 不能在存储器与存储器之间对换数据,XCHG reg,reg/mem ;reg reg/mem,演示,例2.2 数据交换,mov ax,1199h;ax=1199h xchg ah,al;ax=9911h ;等同于 xchg al,ah mov wvar,5566h;wvar是一个字量变量 xchg ax,wvar
7、 ;ax=5566h,wvar=9911h ;等同于 xchg wvar,ax xchg al,byte ptr wvar+1 ;ax=5599h,wvar=6611h ;“byte ptr wvar+1”强制为字节量,只取高字节与AL类型交换,否则数据类型不匹配,3. 换码指令XLAT(translate),将BX指定的缓冲区中、AL指定的位移处的一个字节数据取出赋给AL,换码指令执行前: 在主存建立一个字节量表格,内含要转换成的目的代码 表格首地址存放于BX,AL存放相对表格首地址的位移量 换码指令执行后: 将AL寄存器的内容转换为目标代码,XLAT;alds:bx+al,演示,2.3.2
8、 堆栈操作指令,堆栈是一个“后进先出FILO”(或说“先进后出FILO”)的主存区域,位于堆栈段中;SS段寄存器记录其段地址 堆栈只有一个出口,即当前栈顶;用堆栈指针寄存器SP指定 堆栈只有两种基本操作:进栈和出栈,对应两条指令PUSH和POP,图示,进栈指令PUSH,进栈指令先使堆栈指针SP减2,然后把一个字操作数存入堆栈顶部,PUSH r16/m16/seg ;SPSP2 ;SS:SPr16/m16/seg,演示,push ax push 2000h,出栈指令POP,出栈指令把栈顶的一个字传送至指定的目的操作数,然后堆栈指针SP加2,POP r16/m16/seg ; r16/m16/se
9、gSS:SP ;SPSP2,pop ax pop wvar,演示,堆栈操作的特点,堆栈操作的单位是字,进栈和出栈只对字量 字量数据从栈顶压入和弹出时,都是低地址字节送低字节,高地址字节送高字节 堆栈操作遵循先进后出原则,但可用存储器寻址方式随机存取堆栈中的数据 堆栈段是程序中不可或缺的一个内存区,常用来 临时存放数据 传递参数 保存和恢复寄存器,2.3.3 标志操作指令,1. 标志位操作指令 CLC;复位进位标志:CF0 STC;置位进位标志:CF1 CMC;求反进位标志:CFCF CLD;复位方向标志:DF0 STD;置位方向标志:DF1 CLI;复位中断标志:IF0 STI;置位中断标志:
10、IF1 2. 标志寄存器低字节与AH的传送指令 3. 标志寄存器出入堆栈指令,将存储器操作数的有效地址送至指定的16位通用寄存器,有效地址传送指令LEA(load effective address),LEA r16, mem ;r16mem的有效地址EA,例题2.5 有效地址的获取 mov bx,400h mov si,3ch lea bx,bx+si+0f62h ;BX400H3CH0F62H139EH,例2.6 地址传送与内容传送,wvar dw 4142h;假设偏移地址为04H mov ax,wvar;内容传送:AX4142H lea si,wvar;地址传送:SI0004H ;等同于 lea si, 0004h mov cx,si;内容传送:CX4142H mov di,offset wvar;mov di,0004h ;利用操作符OFFSET获取变量的有效地址 mov dx,di ;内容传送:DX4142H,调试程序DEBUG,DEBUG是常用的汇编语言级调试工具,为汇编语言程序员提供了分析指令、跟踪程序的有效手段 常用命令: A 汇编U 反汇编 T 单步执行G 断点执行 D 数据显示R 寄存器 启动方法 DOS下执行DEBUG.EXE程序 Windows 9x中进入MS-DOS环境执
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 简单的员工离职协议书
- 烟气处理中介销售协议书
- 烤房机电维护安全协议书
- 线上课程的实施方案
- Spark实时日志处理项目设计实践课程设计
- 小区采购方案范本
- 《无偿献血科普教育场所建设指南》
- 目标驱动成长:高中“目标管理与持续奋斗”主题班会教案
- 高二语文《“甄嬛点名+提问”互动课堂创新设计》培训讲义
- 高中物理2026届高三二轮复习6大误区精析与备考参考
- 西藏自治区日喀则市2026届高三第二次模拟考试语文试卷含解析
- 2026年酒店住宿O2O线上线下融合的预订与入住体验
- 辽宁省能源集团招聘笔试题库2026
- 管道拆除安全措施方案
- 成人2型糖尿病口服降糖药联合治疗专家共识(2025版)课件
- 英语北京市昌平区2026年高三年级第一次统一练习(昌平高三一模)(4.7-4.10)
- 2026成都市八年级语文下册部编版期末考试卷含答案
- 便利店工作制度详细流程
- 村干部工作考勤制度
- 2025山东威海乳山市人民医院公开招聘急需紧缺专业人才10人笔试历年典型考题及考点剖析附带答案详解试卷2套
- 建设养牛场合同协议书
评论
0/150
提交评论