计算机硬件第二章ppt.ppt
《计算机硬件第二章ppt.ppt》由会员分享,可在线阅读,更多相关《计算机硬件第二章ppt.ppt(99页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第2章指令系统本章重点:计算机的编程结构逻辑地址、线性地址和物理地址的含义操作数的寻址方式堆栈操作的特点换码指令的特点串操作指令的特点和用法教学建议n在讲述计算机保持结构基础上寻址方式。n指令系统是本章的重点。n讲述指令系统时,着重讲清堆栈操作指令、换码指令、串操作指令等较难掌握的指令,结合习题和实验题前面掌握指令系统的用法。n本章用4学时讲解,4学时做实验。2.1 计算机的编程结构2.1.1 寄存器16位AXBXCXDXSPBPSIDI8位8位32位AHALBHBLCHCLDHDLEAXEBXECXEDXESPEBPESIEDIIPFLAGSEIPEFLAGSCSDSESSSFSGS1段寄存
2、器 16位微处理器:n代码段CS(code segment)n数据段DS(data segment)n堆栈段SS(stack segment)n附加段ES(extra segment)32位微处理器增加了FS和GS两个段寄存器 2通用寄存器nEAX/AX 常用指令的执行nEBX/BX 基址寄存器nECX/CX 用作计数器nEDX/DX 用来存放高位的数据或I/O地址。nESP/SP 堆栈指针寄存器nEBP/BP 基址指针寄存器nESI/SI 源变址寄存器nEDI/DI 目的变址寄存器3.指令指针寄存器和标志寄存器n指令指针寄存器EIP/IP用于存放指令所在单元地址的偏移量,与代码段寄存器CS配
3、合使用,以便得到指令所在单元地址。n标志寄存器EFLAGS/FLAGS用于存放系统的状态标志和控制标志。状态标志1)符号标志SF(sign flag)2)零标志ZF(zero flag)3)奇偶标志PF(parity flag)4)进位标志CF(carry flag)5)辅助进位标志AF(auxiliary flag)6)溢出标志OF(overflow flag)控制标志1)方向标志DF(direction flag)2)中断允许标志IF(interrupt enable flag)3)跟踪标志TF(trap flag)2.1.2存储器1.32位微处理器有三种工作方式:实地址方式,虚拟地址方式
4、(保护方式)虚拟8086方式。1实地址方式n1)逻辑地址:16位的段码和16位的偏移量组合在一起称为逻辑地址段码:偏移量段码:偏移量2)物理地址:n物理地址段首地址偏移量物理地址段首地址偏移量24段段码偏移量码偏移量实地址下物理地址的计算计算物理地址的具体例子2虚地址方式虚地址方式是32位微处理器最常用的方式。虚地址方式下从逻辑地址到线性地址虚地址方式下物理地址的形成2.1.3 输入输出端口接口芯片内部的寄存器:1)数据寄存器2)状态寄存器3)命令(或控制)寄存器2.2 操作数的寻址方式一条指令要明确两个问题:做什么操作操作码 数据在何处寻址2.2.1 立即寻址n例1:MOV AL,80H 1
5、6进制数80H送入AL。n例2:MOV CX,1000H 1000H送入CX,CH中为10H,CL中为00H。n例3:MOV EBX,20031231H 20031231H送入EBX。2.2.2 寄存器寻址n例1:INC CX CX中的内容加1。n例2:ADD AX,SI AX和SI中的内容相加,结果放在AX中2.2.3 输入输出端口寻址1直接寻址n例1.IN AL,50H 50H端口的字节读入AL。n例2 OUT 80H,AX AX中的内容输出到80H、81H两个端口n例3 IN EAX,60H 60H、61H、62H和63H端口的4个字节由低到高依次输入到EAX中。直接寻址00H-FFH2
6、.2.3 输入输出端口寻址2.寄存器间接寻址n例1IN AX,DX 从DX和DX+1所指的2个端口中输入1个字n例2OUT DX,AL AL中的字节输出到DX所指的端口中n例3 OUT DX,EAX EAX中的双字由低到高依次输出到DX、DX+1、DX+2和DX+3所指的4个端口中寄存器只能为DX2.2.4 存储器寻址有效地址的完整表达式如下:EA=基址变址基址变址比例因子位移量比例因子位移量 1直接寻址 n例:MOVAX,1000HDS段偏移量为1000H和1001H两单元的内容传送到AX中。n例:MOVEAX,ES:DATAES段有效地址为DATA、DATA+1、DATA+2、DATA+3
7、的4个字节由低到高依次传送到EAX中。段名:偏移地址2寄存器间接寻址nMOV BX,1000H;偏移量1000H送入BXnMOV EAX,BX ;DS段偏移量为1000H、1001H、1002H和 1003H单元的内容送入EAX。可用寄存器:BX、BP、SI和DI,其中BX和BP的默认段分别为DS段和SS段注意BX和AX的区别:BX为地址,而AX为具体内容3寄存器相对寻址例:MOV AX,SI+100H 设DS1000H,SI=0。则此指令 把物理地址为10100H和10101H两 单元的内容送入AX,寄存器相对寻址方式 示意图4 基址加变址寻址例1.MOV AL,EBX+EBP 默认段为DS
8、段例2.MOV AX,EBP+EBX 默认段为SS段5相对基址加变址寻址例1 对二维数组的访问MOV AL,EBX+ESI+TWOARRAY6相对比例变址寻址 MOVEAX,ARRAYEBX*47基址加比例变址寻址例:MOV EAX,EBXESI*4 ;有效地址EBX+ESI4,取出连续4个单元的内 容送入EAX。8相对基址加比例变址寻址例:MOV AX,TWOARREBXESI*2 ;位移量TWOARR指向二维数组 首地址,基址寄存器EBX指向 某一行,变址寄存器ESI指向 某一列,数组元素为2字节长 2.2.5 关于地址的寻址1.一般寻址(1)立即寻址 例:MOV AX,OFFSET DA
9、TA(2)存储器寻址例:LEA AX,BX+SI ;设BX1000H,SI=100H,执行LEA指令之后 AX1000H+100H=1100H.2.特殊寻址(1)段内直接寻址IPIP位移量位移量 或或 EIPEIP位移量位移量 例1:JMP SHORT FIRST ;SHORT为类型说明符,表示短转 移,即位移量为8位,转移范围 在128127之间。类型说明符:SHORT:8位WORD:16位DWORD:32位NEAR:段内16位或32位FAR:段间转移(2)段内间接寻址 例1:JMP ECX ;ECX的内容作为地址送入EIP。例2:JMP WORD PTRBX+SI ;BX+SI所指字单元的
10、内容 送入IP。(3)段间直接寻址例:JMP FAR PRT THIRD ;FAR是类型说明符,表示段间 转移(4)段间间接寻址例:JMP DWORD PTRBX ;类型说明符DWORD和指针运算符 PTR指明从存储器中取双字,分 别放在IP和CS2.3 指令系统通常,指令系统包含如下6类指令 nl传送指令nl算术运算指令nl逻辑运算和位操作指令nl串操作指令nl转移和调用类指令nl控制指令2.3.1 传送指令按功能可分为5种:通用传送指令 标志传送指令 地址传送指令 输入输出指令 转换类指令1通用传送指令 n数据传送指令n堆栈基本操作指令n数据交换指令。1)数据传送指令 n通用传输指令 MO
11、V n符号扩展传送指令MOVSX 例:MOVSX EBX,DLn零扩展传送指令MOVZX 例:MOVZX AX,CL 2)堆栈基本操作指令(1)进栈指令例1:PUSH CS例2:PUSH DWORD PRTEBX+ESI(2)出栈指令例:POP EAX78H56H34H12H78H56H34H12H00H04HSS段首地址10000H10010HESP(推入数据后栈顶)ESP(推入CS后栈顶)ESP(原栈顶)0400HCS78H56H34H12H00H04HESP(弹出数据后栈顶)12345678HEAX10010HSS段首地址10000H08000HDS段首地址IPCS段首地址04000H0
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机硬件 第二 ppt
限制150内