




已阅读5页,还剩33页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
计算机原理和接口技术部分回答第二版总编:龚相福2.2 8086微处理器由哪些部分组成?各部分的功能是什么?16355解决方法:可以按功能分为两部分:总线接口单元总线接口单元(Bus Interface Unit,BIU)和执行单元执行单元(Execution Unit,EU)。总线接口单元BIU是存储和I/O设备之间8086 CPU的接口部件,负责操作整个针脚。这意味着8086对存储和I/O设备的所有操作都由BIU执行。所有外部总线操作都必须具有正确的地址和适当的控制信号,BIU的每个部件主要围绕此目标设计。提供16位双向数据总线、20位地址总线和多条控制总线。这包括从内存设备中提前获取指令,并将它们发送到指令队列缓冲区寄存器。CPU执行指令时,总线接口单元必须与执行单元一起将数据从指定的内存单元或I/o端口发送到执行单元,或将执行单元的处理结果传送到指定的内存单元或I/o端口。执行单元EU包括一个16位运算符ALU、八个16位寄存器、一个16位标志寄存器FR、一个运算寄存器和执行单元的控制电路。该单元解释并执行所有命令,同时管理上述相关寄存器。欧盟对命令的执行以命令操作码开始,在总线接口单元的命令队列缓冲区中一次占用一个字节。如果命令队列缓冲区为空,EU将等待BIU通过外部总线从内存中提取命令并将其发送到EU,然后通过解码的电路分析发出相应的控制命令,以控制ALU数据总线的数据流。2.3 8086 CPU寄存器组织的简要说明。解决方案: (1)通用寄存器:也称为数据寄存器的通用寄存器,可以同时用作16位数据寄存器和两个8位数据寄存器。用作16位时,它们称为AX、BX、CX和DX。作为8位使用时,AH、BH、CH、DH存储高字节,AL、BL、CL、DL存储低字节,可以独立寻址。这样,4个16位寄存器可以用作8个8位寄存器。(2)段寄存器:段寄存器共有4个CS、DS、SS、ES。片段寄存器CS指示当前使用的命令代码可以从该片段寄存器指定的内存段中获取,其偏移值来自IP。堆栈段寄存器SS指定当前堆栈的起始地址。数据段寄存器DS表示存储当前程序使用的数据的段的起始地址。附加段寄存器ES表示当前程序使用附加段地址(通常用于存储原始数据或计算结果)的起始位置。(3)指针和地址更改寄存器:堆栈指针SP表示堆中当前堆栈顶部的地址。入站和出站命令由SP发送到堆栈顶部的偏移地址。主指针BP表示要处理堆段的数据的主地址,称为主指针寄存器。地址更改寄存器SI和DI用于容纳当前数据段的一个单位的偏移。(4)命令指针和标志寄存器:命令指针IP的功能类似于Z80 CPU上的程序计数器PC。正常运行时,BIU将采取的下一个命令的偏移地址保留在IP中。执行命令时自动添加1,指向要导入的下一个内存设备,在每个字节后添加IP内容1,在一个单词后添加IP内容2。有些指令更改IP值,有些指令通过将IP值按到堆栈中将其从堆栈中拉出。标志寄存器FLAGS是16位寄存器,共使用9个有效位,如图2.5所示。其中6位是状态标志位,3位是控制标志位。状态标志位是执行某些命令后特性结果数据的几个要素。控制标志位可由程序记录,以表示控制处理器状态或程序执行方式。2.4 8086 CPU旗标登录说明您的意义与功能。(1) 6个状态指示位功能描述如下:Carry Flag(CF)小数标志位。CF是1,表示执行加法(或减法)运算,产生进位(或借款者)的最高位元。否则为0。奇偶校验标记(PF)奇偶校验标记位。旗标位元反映运算结果中1的数字是偶数还是奇数。如果命令执行结果的低8位包含偶数个1,则pf=1;否则,PF=0。Auxiliary carry Flag(AF)辅助进位旗标位元。执行加(或减)运算,如果结果的低4位到高4位有进位(或借款人),则af=1;否则,AF=0。ZF(零标记)零标记位。如果当前计算结果为零,则ZF=1;否则,ZF=0。SF(Sign Flag)符号旗标位元。等于计算结果的最高位。Overflow Flag(OF)溢出标志位。如果补充运算有溢出,则of=1;否则,OF=0。(2)三个控制标志位用于控制CPU操作,由命令定位和重置。Direction Flag(DF)方向标志位。用于指定字符串处理的方向。此位置为“1”时,字符串按降序处理。也就是说,地址从高到低递减。相反,按增量顺序处理。中断启用标记(IF)允许中断标记位。用于控制8086是否允许接收外部中断请求。If=1,8086响应外部中断,反之则不响应外部中断。注意:IF的状态不影响不可屏蔽中断请求(NMI)和CPU内部中断请求。Trap Flag(TF)追踪旗标位元。为调试程序而设置的陷阱控制位。在此位置“1”,8086 CPU处于单步状态,每次CPU发出命令时自动生成内部中断。重置此位后,CPU工作正常。为什么存储在2.5 8086中使用段管理?解决方案: 8086/8088的地址总线宽度为20位,最大寻址空间为1 MB。其他微处理器在物理模式下只能访问前1 MB的存储地址。实际模式是为8086/8088设计的,使用内存地址段方法解决16个字符长的系统如何提供20位地址的问题。程序员在编写程序时,将存储划分为每个段内地址空间线性增加的段。每个段的大小可达64 KB,因此段中的地址可以用16位表示。划分存储段的方法在编程方面会带来一些麻烦,但它可以扩展存储空间,并且对程序重新定位非常方便。2.6什么是逻辑地址?什么是物理地址?如何计算逻辑地址中的物理地址?解决方案:物理地址:完成存储单元或I/o端口寻址的物理地址将成为物理地址,物理地址因CPU型号而异。物理地址是CPU和存储进行数据交换时实际使用的地址,逻辑地址是程序使用的地址。物理地址由两部分组成:段主地址(段起始地址高度16个字符)和偏移地址。前者由段寄存器给出,后者表示从存储设备所在位置到段起始地址的偏移距离。当CPU对存储单元进行寻址时,将段寄存器的内容向左移动4位,并生成20位物理地址以及命令中提供的16位偏移地址。当选择命令时,CPU自动选择段寄存器CS,向左移动4位,计算命令获取的实际地址以及命令提供的16位偏移地址。在堆栈操作中,CPU自动选择堆栈段寄存器SS,将其内容向左移动4位,然后计算堆栈顶部单元的物理地址以及命令提供的16位偏移地址。每次访问操作数时,CPU都会自动选择数据段寄存器(或附加段寄存器ES),将段基础值向左移动4位,然后添加16位偏移地址,以获得内存中操作数的物理地址。2.9在80x86计算机的输入/输出命令中,I/O针脚通常由DX寄存器提供,但是也可以在命令中直接指定00h到0fh的端口号。可以直接在命令中指定多少个I/o端口?解决方案: 00H到0FFH可以在80x86的输入/输出命令中直接指定,因此命令直接指定的I/o端口数为256个。3.1命令分为几部分?各部分的作用是什么?解决方案:每个指令由两部分组成:opcode字段和地址代码字段。Opcode字段:用于说明此指令将执行的操作。地址代码字段:用于说明命令的操作数。通常,直接提供操作数,提供操作数保留的寄存器编号,或提供操作数保留的存储设备的地址或地址的相关信息。3.2表示以下MOV命令的源操作数寻址方法:MOVAX,1234HMOVAX,BXMOVAX,BXMOVAX,TABLE;桌子;桌子。TABLE是变量名称MOVAX,1234HMOVAX,BX 1234HMOVAX,BPSIMOVAX,BX SI-1234H解决方案: MOVAX,1234H即时寻址MOVAX,BX寄存器寻址MOVAX,BX寄存器间接寻址MOVAX,tableTABLE是变量名称的直接寻址方法MOVAX,prod 1234h直接寻址方法MOVAX,BX 1234H寄存器相对寻址MOVAX,BPSI默认地址MOVAX,bx si-1234h相对地址地址寻址3.3设置:(DS)=2000H,(BX)=0100H,(SS)=1000H,(BP)=0010H,TABLE的物理地址为2000AH,(SI)查找以下每个命令源操作数的存储设备地址:MOVAX,1234HMOVAX,BXMOVAX,TABLEBXMOVAX,BPMOVAX,BPSI解决方案:存储单元地址:(DS)10H EA=2000H10H 1234H=21234H存储单元地址:(ds)10h(bx)=2000 h10 h 0100h=20100h存储单元地址:(ds)10h ea=2000 h10h 0100h 000 a h=2010 ah存储单元地址:(SS)10H EA=1000H10H 0010H=10010H存储设备地址:(ss)10h ea=1000 h10h 0010h 0002h=10012h3.4需要以下寻址方法,以便将ARRAY设置为单词数组中的第一个地址,并在AX寄存器中写入弹出第五个单词元素的命令:直接寻址寄存器间接寻址寄存器相对寻址寄存器更改默认地址寻址(1)直接寻址(2)寄存器间接寻址(3)寄存器相对寻址(4)基本寻址Mov ax、array 8 mov bx、array 8 mov bx、8 leabx和arrayMov ax、bx mov ax、array bx mov si、8MOV AX,BX SI3.5当前设置(CS)=2000H,(IP)=2000H,标签NEXT表示当前线段偏移地址为0100H,(DS)=1000H,(BX)=1000H,(11000H)JMPNEARPTR JMPBX jmpwordrarray解决方法:JMPNEARPTR此传输命令的目标传输地址为20100H JMPBX发送命令的目标发送地址为21000HJMPWORDPTRARRAY此传输命令的目标传输地址为23000H3.6当前在(CS)=2000H,(IP)=2000H,标签NEXT在3000H:1000H中定义。当前(DS)=1000H,(BX)=1000H,(11000H)=00H,(11000h)=00h,(11003H)=30H,数据段930 JMPFARPTRNEXT JMPDWORDARRAY解决方案:JMPFARPTRNEXT此传输命令的目标传输地址为:31000H JMPDWORDARRAY此传输命令的目标传输地址为30300H3.7以下每组命令之间有何区别?(1)MOV AX,1234H MOV AX,1234H(2)MOV AX,TABLEMOV AX,TABLE(3)MOV AX、TABLE LEAAX、TALBE(4)MOV AX,BX MOV AX,BX解决方案:(1)MOV AX,1234H立即将1234H发送到寄存器AX将MOV AX、prod 1234h存储库prod 1234h的内容发送到寄存器AX(2)MOV AX,TABLE将标签表的地址发送到寄存器AXMOV AX,TABLE将存储库TABLE的内容发送到寄存器AX(3)MOV AX,TABLE将标签表的地址发送到寄存器AXLEA AX,TAL
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年商丘市睢阳区招聘公共安全服务人员体能测试考前自测高频考点模拟试题参考答案详解
- 2025-2030工业气体特种应用市场增量空间分析报告
- 2025-2030工业机器人行业供需格局与未来发展投资规划分析报告
- 2025-2030工业机器人核心零部件产业趋势研判及投资价值分析报告
- 2025-2030工业机器人智能化升级路径与劳动力替代效应评估报告
- 2025-2030工业机器人技术升级与智能制造产业投资机会分析报告
- 灭火器操作安全培训课件
- 高中生补助申请书范文
- 医生申请开号的申请书
- 新生儿上户申请书范文
- 《电力应急电源装备测试导则》
- 海水鱼类增殖放流记录表格、人工标志、增殖放流验收报告
- 建筑工地节前停工安全检查表
- 动态心电图培训课件
- 微商培训的课件目录
- FZ/T 07025-2022针织行业绿色工厂评价要求
- 小学二年级上册数学练习题
- 德国国家概况
- 内科常见疾病中医诊疗规范诊疗指南2023版
- 全国2022年10月自考05744《食品加工与保藏(专)》真题
- 整本书读写《一颗遗失的扣子》(课件)三年级下册语文统编版
评论
0/150
提交评论