微机第三章第一讲ppt课件

上传人:bin****86 文档编号:55324229 上传时间:2018-09-27 格式:PPT 页数:31 大小:631KB
返回 下载 相关 举报
微机第三章第一讲ppt课件_第1页
第1页 / 共31页
微机第三章第一讲ppt课件_第2页
第2页 / 共31页
微机第三章第一讲ppt课件_第3页
第3页 / 共31页
微机第三章第一讲ppt课件_第4页
第4页 / 共31页
微机第三章第一讲ppt课件_第5页
第5页 / 共31页
点击查看更多>>
资源描述

《微机第三章第一讲ppt课件》由会员分享,可在线阅读,更多相关《微机第三章第一讲ppt课件(31页珍藏版)》请在金锄头文库上搜索。

1、,第三章 80X86寻址方式与指令系统,程序语言简介,8086/8088的寻址方式,8086/8088指令格式,8086/8088的指令系统,(1) 指令、指令系统和程序 (2) 机器码和机器语言 (3) 助记符和汇编语言 (4) 高级语言,第一节 程序语言简介,指令、指令系统和程序CPU是一个可以完成一些基本操作的电子器件。用编码表示CPU的一个基本操作,称为一条指令。全部指令集称为指令系统。,指令系统反映 CPU的基本功能.指令由两部分组成: 操作码部分,操作数部分,一个CPU的指令系统是固定的,不同类型的CPU其指令系统不同, 同一系列向上兼容。程序是为要解决的问题编写出来的指令集合。用

2、户为解决自己的问题所编写的程序称为源程序。,(2) 机器码和机器语言用二进制数编码表示的指令,称为机器指令或机器码。用机器语言编写的程序称为目标程序。机器语言特点:CPU能直接识别的唯一语言 面向机器,可直接被计算机执行 执行速度快,占用内存空间小 编程效率低、可读性差、可移值性差,(3) 助记符和汇编语言助记符是有助记忆、并能描述指令功能的符号。 通常是指令功能的英文单词的缩写。 例 数的传送指令用助记符MOV 用助记符等表示的指令称为汇编格式指令 例 MOV AL, 0 汇编语言是汇编格式指令、伪指令及其使用的一组规则。是面向机器的语言用汇编语言编写的程序称汇编语言程序。,例 将地址为20

3、00H和2001H 的两内存单元内容相加,结果存在地址2002H单元中。,用机器码编程:A0 00 2002 06 01 20A2 02 20,用汇编语言编写的程序段为: MOV AL , 2000 ADD AL , 2001 MOV 2002 , AL,本课程学习汇编语言的意义:汇编语言程序反应机器运行的实际过程,通过编制汇编语言程序,加深对计算机工作过程的理解。本课程涉及到接口电路的设计及应用,在直接控制硬件的场合,汇编语言比高级语言更具优势,也可以更好的理解接口工作过程。,由指令字节给出的信息求出操作数的地址称为有效地址EA寻找(得到)操作数有效地址的方法称为操作数的寻址方法寻找(得到)

4、操作数有效地址和存取操作数的过程称为指令的寻址操作,一、操作数寻址方式二、程序转移地址的寻址方式三、小结,第二节 8086/8088的寻址方式,一、操作数寻址方式共七种寻址方式:1. 立即数寻址 2. 寄存器寻址 3. 直接寻址 4. 寄存器间接寻址 5. 寄存器相对寻址 6. 基址加变址寄存器寻址 7. 相对基址加变址寄存器寻址,与内存单元寻址无关,与内存单元有关的寻址(存储器操作数),立即数寻址操作数直接存放在指令中,紧跟在操作码之后,作为指令的一部分,存放在代码段里,这种操作数称为立即数。立即数可以是8位或16位(16位的立即数是高位字节放在高地址,低位字节放在低地址) 。 应用场合:

5、立即数常用来给寄存器或内存单元赋初值。,例1 MOV AX , 2056H结果 ( AH ) = 20H ( AL ) = 56H 例2 MOV AL , 78 H 结果 ( AL ) = 78H,注意:只能用于源操作数字段,不能用于目的操作数字段。,低地址,高地址,2. 寄存器寻址方式操作数在寄存器中,指令中指定寄存器名8 位操作数, 用 8 位寄存器:AH、AL、BH、BL、CH、CL、DH、DL16 位操作数,用 16 位寄存器:AX、BX、CX、DX、SP、BP、SI、DICS、DS、SS、ES这种寻址方式因为操作数在寄存器中不需要访问存储器因此运算速度较高。,例1 MOV AX ,

6、2056H 执行后:(AX)=2056H,例2 MOV BL , AH 执行前:(BL) = 12H, (AH) = 78H 执行后:(BL) = 78H , (AH) = 78H,例 编程将CL寄存器的内容传送到21000H单元中。,MOV AX, 2000H MOV DS, AX ; (DS) = 2000H MOV DI, 1000H ; (DI) = 1000H MOV DS: DI , CL ;(21000H) = (CL),地址 21000H2000:1000H,编程时, DS 存放段地址2000H,段首地址为20000HDI 存放偏移地址1000H,指令 MOV DS: DI ,

7、 CL,功能:将CL寄存器中的内容传送到以DS为段值,DI为偏移值的内存单元中,以下的 5 种寻址方式,操作数存放在内存中,取完指令后,还需到内存取数。指令中给出的是该操作数的地址,包括段地址和偏移地址。,通过例子看到:在相应的寄存器中设定段值和偏移值, 由地址加法器送出20位的地址信号,对选中的内存单元进行操作。,内存单元的地址由逻辑地址给出逻辑地址由 段地址 :偏移地址 构成, 为减短指令长度,指令中:只给出偏移地址的来源,段地址由默认关系给出。MOV AL, 2000H , CPU根据偏移地址给出的方式,按默认关系自动选择段寄存器,获取段值,由段值、偏移值构成操作数所在内存单元的物理地址

8、。上例 : 物理地址= PA= ( DS ) 10H + 2000H即选择DS寄存器的内容为段地址。,指令中用 给出偏移地址。操作数的偏移地址又称有效地址EA ( Efficient Address),直接寻址方式要点:存储器操作数的有效地址EA在指令中直接给出。 例 MOV AL, 1000H 默认段寄存器为DS。 操作数所在内存单元的物理地址为:PA = ( DS )10H + EA,例:MOV AX , 1000 H若 ( DS ) = 2000H 内存操作数的物理地址为:PA = ( DS )10H +EA= 2000H 10H + 1000H= 21000H 执行后 (AX)= 30

9、40H,21000,40,00,A1,内存,10,30,指,令,3直接寻址方式(Direct addressing),在汇编语言程序中,不直接用数值 表示偏移地址,用符号表示地址,称符号地址(变量名)。符号地址不用括号,例 符号buffer表示一个地址。写成 MOV AX , buffer ; 源操作数为buffer指向的内存单元的内容,符号地址( 变量名)经汇编连接后,与一个确定的数值地址相对应 可用操作符Offset 获取变量的偏移地址。故 PA = ( DS )10H + Offset buffer指令执行结果 ( AX ) = 0B0A H,4. 寄存器间接寻址(Register in

10、direct addressing)操作数放在存储器里,操作数的有效地址EA由寄存器给出,寄存器的内容为操作数的有效地址。可用的寄存器只有 BX、SI、DI 、BP如: MOV AL, BX MOV AH, SI MOV DL, DI ,默认段寄存器的关系: 使用BX、SI、DI,默认段寄存器为DS(BX)PA = ( DS )10H + (SI)(DI),寄存器相对寻址(Register relative addressing) 操作数的有效地址是一个基址或变址寄存器的内容和指令中指定的8位或16位位移量(displacement)之和。可 用的寄存器有 BX、DI 、SI、BP 如: MO

11、V AL, BX +10H MOV AH, DI+20H MOV DL, 30H SI MOV DH, 40H BP ,默认段寄存器的关系与寄存器间接寻址相同 使用BX、SI、DI,默认段寄存器为DS(BX)PA = ( DS )10H + (SI) + 偏移量 (DI) 使用BP,默认段寄存器为SS PA = ( SS )10H + ( BP ) + 偏移量,例: MOV AX , BX+30H 若 ( DS ) = 2000H( BX ) = 1000H 则内存操作数的物理地址为:PA = ( DS )10H + ( BX ) + 30H = 21030H 指令执行后:(AX) = (21

12、030H) = 8976H,6. 基址加变址寻址 操作数的有效地址由一个基址寄存器与一个变址寄存器之和给出。可用的基址寄存器为 BX 、BP ,变址寄存器为 SI 、DI。如 MOV AL, BX+SI MOV AX, BXDI MOV DL, BP+SI MOV DX, BPDI ,默认段寄存器由基址寄存器决定 基址寄存器为BX,默认段寄存器为DS (SI) PA = ( DS )10H + ( BX ) + (DI) 基址寄存器为BP,默认段寄存器为SS (SI) PA = ( SS )10H + ( BP ) + (DI),例: MOV AX , BX + SI 若 ( DS ) = 4

13、000H( BX ) = 2000H ( SI ) = 100H 则内存操作数的物理地址为:PA = ( DS )10H + ( BX ) + ( SI ) = 42100H 指令执行后(AX) = (42100H) = 2345H,相对基址加变址寻址(Relative based indexed addressing)操作数的有效地址由基址寄存器、变址寄存器、偏移量( 8位或16位)三者之和给出。 可用的寄存器与基址加变址寻址方式相同基址寄存器有 BX、BP变址寄存器有 SI、DI 如 MOV AL, BX+SI +10H MOV AX,20H BXDI MOV DL, BP+SI+30H

14、MOV DX,40H BPDI ,默认段寄存器由基址寄存器决定, 与基址加变址寻址相同. 基址寄存器为BX,默认段寄存器为DS (SI) PA = ( DS )10H + ( BX ) + + 偏移量 (DI) 基址寄存器为BP,默认段寄存器为SS (SI) PA = ( SS )10H + ( BP ) + + 偏移量 (DI),例: MOV AX , BX + SI + 10H 若 ( DS ) = 4000H( BX ) = 3000H ( SI ) = 200H 则内存操作数的物理地址为:PA = ( DS )10H + ( BX ) + ( SI ) + 10H = 43210H 指令执行后(AX) = (43210H) = 8877H,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > PPT模板库 > 其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号