- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
北理工微机原理第五章(I)课件
第五章 86系列微型计算机指令系统
概述
5.1指令格式与寻址方式
5.2 数据传送指令
5.3 数据操作类指令
5.4 串操作指令
5.5 控制类指令
概述
指令(instruction)是微处理器执行某种操作的命令,微处理器全部指令的集合称为指令系统。
指令有两种书写格式:机器指令和符号指令(也叫助记符)。
符号指令是用规定的助记符和规定的书写格式书写的指令。符号指令的书写格式为:
操作码 操作数
MOV AL, 1 ;
汇编语言、机器语言和汇编程序assembly language assembler
用助记符编写的程序称为汇编语言程序
使计算机执行操作的二进制码称为机器指令(machine code)
汇编语言指令与机器指令是一一对应的
用机器指令编写的程序称为机器语言程序,CPU只能执行机器语言程序;
将汇编语言指令翻译成机器语言指令称为汇编,此翻译程序称为汇编程序(assembler)
Masm.exe:汇编程序
一. 汇编语言指令格式
[标号:]操作码 操作数1,操作数2[;注释]
换行表示一条指令结束。
例: LL: MOV AX,1090H ;取参数
1.标号:指令的符号地址
2.操作码:指明指令功能。
3.操作数(operand):指令操作对象
数据、寄存器名、地址及约定符号。
4.注释行:说明指令在程序中的作用。
操作码和操作数是指令主体。
MOV__move传送
XCHG__exchange交换
AND__and logic与逻辑运算
XOR__exclusive or异或
MUL__Multiply乘法
ROR__rotate right右循环
JMP__ jump跳转
RET__return 子程序返回
5.1.1 指令格式
二. 机器语言指令格式
操作码 [操作数1] [操作数2]
有单字节、双字节和三字节指令。
汇编语言指令中操作码和操作数是指令主体,称为指令可执行部分,指令表中可查出对应指令代码。
举例:
汇编语言: 机器语言:
MOV AX,1000H B8 00 10H
MOV DS,AX 8E D8H
MOV CX,0008H B9 08 00H00000000寻址方式:寻找指令中操作数的方式(在不特别说明的情况下,一般指源操作数)
操作数有三种可能的存放方式:
直接包含在指令中,例 MOV AX,1000H (B8 00 10H)
立即数
称为立即数寻址
包含在某个寄存器中,例 MOV DS,AX (8E D8H)
寄存器操作数
称为寄存器寻址
在内存中
存储器操作数(内存操作数)
称为存储器寻址(直接寻址、寄存器间接寻址、寄存器相对寻址、基址加变址寻址和相对的基址加变址寻址 )
5. 1.2 寻址方式(Addressing Modes)
1. 立即数寻址
操作数作为立即数直接存在指令中,可为字节、 字; 字; 机器语言指令
MOV AL, 80H ;B080H
MOV AX,1090H ;B89010H
低地址
高地址
DS段
操作码
90H
10H
AX
10H
90H
AH
AL
注意 :(1) 立即数只能是整数。
(2) 立即数只能作为源操作数。
2. 寄存器寻址
操作数包含在指令规定的8位或16位寄存器中
例,
MOV CX, DX (源操作数与目的操作数要匹配)
34H
12H
CX
34H
12H
DX
寄存器寻址由于无需从存储器中取操作数,故执行速度快
注意:对于16位操作数来说,寄存器可以为AX,BX,CX,DX,SI,DI,SP,BP。对于8位寄存器可以为AH,AL,BH,BL,CH,CL,DH,DL
3 操作数在内存单元中(直接寻址,寄存器间接寻址)
直接寻址
MOV AX, [1070H]
将DS段的1070H和1071H两单元的内容取到AX中
寄存器间接寻址
操作数在内存中,内存的有效地址由寄存器指出。这些寄存器可以为BX,BP,SI和DI。
MOV AX,[BX] :数据段基址寻址
用BX寄存器进行间接寻址,默认的段寄存器为DS。
寄存器间接寻址
(2) MOV BX,[BP] :堆栈段基址寻址
用BP寄存器进行间接寻址,默认的段寄存器为SS。
(3) MOV
文档评论(0)