- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第2章 微型计算机的指令系统;;8086的指令格式;2.1 寻址方式;8086支持的寻址方式;①立即寻址;①立即寻址;②寄存器寻址;③直接寻址;③直接寻址;③直接寻址;④寄存器间接寻址;④寄存器间接寻址;作用
利用寄存器作为内存中某个数据单元的地址指针
注意事项
寄存器名称外必须加方括号,以区别寄存器寻址方式;
段超越前缀用来从默认段以外的段中取得数据;
例: MOV BX,ES:[SI];⑤寄存器相对寻址;⑤寄存器相对寻址;用途:通常用这种寻址方式来访问一段连续的内存空间。
注意事项
寄存器名称外必须加方括号,位移量可以在括号前,也可以在括号内,在括号内必须以“+”连接;
如 MOV CX,[BX+36H]
段超越前缀用来从默认段以外的段中取得数据;
例: MOV BX,ES:disp[SI];⑥基址变址寻址;;用途:常用于访问内存中某一二维数组
注意事项
寄存器SI和DI、BP和BX不能同时出现在[ ]中。
只存在四种情况
[BX][SI];[BX][DI];[BP][SI];[BP][DI];隐含寻址;;三种操作数类型;2.2 8086指令系统;2.2.1 数据传送指令;上述指令的共同特点;通用数据传送指令;MOV传送指令(move)
格式
MOV 目的,源
功能
实现CPU内部寄存器之间或寄存器与存储器间的数据传送。
举例
MOV AX, 0FF00H MOV [DI], AX
MOV CX, [1000H] MOV BL, 40H[SI];分类
mov r,oprd
Oprd: r, mem,segr, imm
mov mem, oprd
Oprd: r, segr, imm
mov segr, oprd
(CS除外)
Oped: r, mem;注意
指令可以传送一个字节或一个字;
IP寄存器不能用作源操作数或目的操作数;
立即数和CS寄存器不能用作目的操作数;
除了源操作数为立即数的情况外,两个操作数中必有一个是寄存器,但不能都是段寄存器;;【数据段】 数据通常存放在数据段中
设某程序数据段定义如下:
DATA SEGMENT ;数据段开始
AREA1 DB 14H,3BH,05H ;定义字节变量
AREA2 DB 3 DUP(0) ;复制操作
ARRAY DW 3100H,01A6H ;定义字变量
STRING DB ‘GOOD’
DATA ENDS ;数据段结束
汇编后,DATA将被赋予一个具体的段地址。
各变量将从偏移地址0000H开始依次存放,各变量名地址等于它们在数据段中的偏移量。;从左图来看,各变量偏移地址
AREA1的偏移地址为0000H
AREA2的偏??地址为0003H
ARRAY的偏移地址为0006H
STRING的偏移地址为000AH;例:MOV DX,OFFSET ARRAY
解:ARRAY的偏移地址?DX。(OFFSET:取后面的符号偏移地址的值)
设:ARRAY的定义如左图所示
则:DX = 0006H
例: MOV AL,AREA1 ;
AL?AREA1的内容14H
MOV AREA2,AL ;
0003H单元? 14H;将AREA1的数据内容传送到AREA2;PUSH进栈指令(Push Word onto Stack)
格式
PUSH OPRD; OPRD: r, mem, seg
功能
将OPRD中的数据压入堆栈。
工作过程
SP←SP-2;(SP+1,SP)←OPRD
操作数要求
可以是16位通用寄存器、段寄存器、存储器中的数据字,但不能是立即数。;POP出栈指令(Pop Word off Stack)
格式
POP dest;dest: r, mem, seg
功能
将栈顶数据弹出至dest。
工作过程
des← (SP+1,SP) ;SP←SP+2
目的操作数要求
可以是16位通用寄存器、段寄存器、存储器中的数据字,但CS不能做目的操作数。;?PUSH和POP演示;堆栈的用途;XCHG交换指令(Exchange)
格式
XCHG 目的,源
功能
实现源操作数和目的操作数的交换。
注意
交换限在通用寄存器之间、寄存器和存储单元之间。段寄存器不能作为操作数,存储单元之间不能进行交换;操作数不能为立即数。;举例
您可能关注的文档
最近下载
- 财务审计服务方案投标文件(技术方案).doc
- 广工数据挖掘复习(绩点4.7)_数据挖掘知识点总结资.doc
- 新解读《GB_T 2567-2021树脂浇铸体性能试验方法》最新解读.pptx VIP
- 1-JTG C20-2011 公路工程地质勘察规范.pdf
- 软件设计与体系结构智慧树知到期末考试答案2024年.docx VIP
- 培训课件--剧毒化学品管理.ppt VIP
- PW5410A_2.0数据手册下载.pdf VIP
- 《英语(师范)英语文学导论》课程教学大纲.pdf VIP
- 25秋二上语文写字表注音练习【空白】(250个字).pdf VIP
- 《义务教育英语课程标准》(2025年版).pptx VIP
原创力文档


文档评论(0)