版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第二章 8086/8086微处理器 (10学时) 第三章 汇编语言程序设计 (7学时) 第四章 PC机的总线结构和时序 (3学时) 第五章 微机接口技术概述 (5学时) 第六章 中断技术 (4学时) 第七章 并行输入/输出接口 (4学时) 第八章 数/模、模/ 数转换接口 (6学时) 第九章 半导体存储器 (2学时) 第十章 高档微处理器 ( 2学时),第二章 8086/8088微处理器 第一节 8086/8088微处理器的结构 第二节 8086/8088的寻址方式 第三节 8086/8088的指令系统 第四节 DOS操作系统简介,第一节 8086/8088微处理器的结构 一、简介 二、808
2、6/8088的编程结构 1. 总线接口部件 2. 执行部件 3. 工作原理 三、8086/8088的寄存器组 介绍调试程序DEBUG 四、8086/8088的存储器组织 1. 内存物理地址的形成 2. 内存单元内容的存放及表示 五、8086/8088的I/O组织,一、8086/8088简介 Intel 系列 的16位CPU 双列直插式封装 40根引脚 工作频率为4.77MHz 10MHz 工作电源+5V,8086 : 对外有16根数据线,20根地址线 可寻址的内存单元数 220 = 1M 内存地址范围00000 FFFFFH 8088 : 内部寄存器、运算部件及 内部操作均按16位设计, 除对
3、外数据线为8根外,其余与8086基本相同。 为与当时已有的8 位外设接口芯片兼容。 IBM PC、IBP PC/XT 采用8088CPU,二、8086/8088的编程结构 编程结构: 指从程序员和使用者的角度看到的结构。 与芯片内部的物理结构和实际布局有区别。,某CPU芯片内部实物图,1. 总线接口部件BIU (Bus Interface Unit) 运输部门 2. 执行部件EU (Execute Unit) 加工部门 3. 工作原理,1. 总线接口部件 BIU 构成部分 4个16位段寄存器: CS,DS,ES,SS 16位IP指令指针寄存器 地址加法器 4字节的指令队列 ( 8086的指令队
4、列为6字节 ),BIU主要功能 负责与存储器、I/O接口传递数据 具体完成: 1)从内存取指令,送到指令队列, 2)配合执行部件从指定的内存单元 或I/O端口取数据, 3)将执行部件的操作结果送到 指定的内存单元或I/O端口。,2执行部件EU 构成部分: 8个16位寄存器: AX、BX、CX、DX SP、BP、DI、SI 1个标志寄存器PSW 1个算术逻辑运算部件ALU 主要功能 执行部件负责指令的执行。 (包括算术、逻辑运算,控制命令等),3. 工作原理 计算机的工作过程是: 取指令, 执行指令,CPU 总线 内存,总线接口部件和执行部件 可并行工作,提高工作效率。 指令的提取和执行分别 由
5、BIU和EU完成。 BIU和EU相互独立又相互配合 1) 当指令队列有一个空字节时, BIU自动把指令取到指令队列中 2) 执行部件总是从指令队列前部 提出指令去执行。 3) 如果在执行指令的过程中, 需要访问内存或I/O端口, EU会请求BIU去完成存取操作。,由于有指令队列的存在, 在EU执行指令的同时,BIU可取指令, 即BIU和EU可处于并行工作状态。,BIU EU,三、8086/8088的寄存器组 共有14个16位寄存器, 其中: AX、BX、CX、DX 又可分成两个 8 位寄存器。 其它10个只能作为16位寄存器。,状态标志寄存器PSW (Program Status Word)
6、16位寄存器,包含9个标志 各标志在标志寄存器中的位置如下: 用了其中的9位,其它7位在8086/8088中无意义。,9个标志按其作用分状态标志和控制标志两类 状态标志:OF、SF、ZF、AF、PF、CF 共6个 记录指令运行过程或运算结果的状态信息。 常作为后续转移指令的控制条件,又称为条件码。 控制标志: DF、IF、TF 共3个 作用是控制CPU 的操作。,各状态标志的含义:,CF:进位标志(Carry Flag) 反应运算过程中,最高位是否产生进位/借位。 (最高位,对字节操作指D7位 ,对字操作指D15位) 加法,最高有效位有进位CF1,否则CF0 减法,最高有效位有借位CF1,否则
7、CF0 AF:辅助进位标志(Auxiliary Carry Flag) 反应运算过程中,对字节操作D3位 是否产生进位。 对字操作D7位 有进位或借位时,AF1,否则AF0。,ZF:零标志(Zero Flag) 反应运算结果是否为0。 运算结果为 0 时,ZF1,否则ZF0 SF:符号标志(Sign Flag) 反应运算结果的符号位。 对字节操作 SFD7 对字操作SFD15,OF:溢出标志(Overflow Flag) 反应运算过程中是否产生溢出。 产生溢出,OF1,否则为0。 PF:奇偶标志(Parity Flag) 反应运算结果中“1”的个数情况。 有偶数个“1”时,PF1, 否则PF0
8、。,最高位D7位产生进位: CF = 1 D3位产生进位: AF = 1 相加的结果为44H, 不为0: ZF = 0 结果的最高位为0: SF = 0 两负数相加结果为正,溢出: OF = 1 结果中有2个1,偶数个1: PF = 1,1 0 0 1 1 1,各控制标志作用(以后用到再介绍):,DF:方向标志 在串操作指令中控制地址变化的方向。 当DF1时,地址递减;当DF时,地址递增。 IF:中断标志 当IF1时,允许CPU响应可屏蔽中断申请。 当IF时,禁止CPU响应可屏蔽中断申请。 TF:跟踪标志 为调试程序设置的一个控制标志。 当TF1时,CPU按单步方式执行指令。,调试程序DEBU
9、G DEBUG.exe 是 DOS提供的一个调试汇编语言程序的程序 每个版本的DOS都带有该程序。 DEBUG程序采用的是命令行方式 使用不方便,但实用性强 是学习汇编语言程序、计算机硬件等课程的有效工具 其他调试程序: Turbo Debugger ( TD.exe ) Code View Softice,DEBUG 主要命令一览,DEBUG程序的具体作用: 1. 查看/修改寄存器, 内存单元的内容; 2. 学习寻址方式和指令系统 ; 3. 了解计算机取指令, 执行指令的工作过程; 4. 调试有问题的汇编语言程序。,注意:DEBUG下符号与标志的对应关系 实验指导书P95,D:DEBUG ;
10、进入DEBUG -R ;查看当前各寄存器的内容 AX=0000 BX=0000 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000 DS=1271 ES=1271 SS=1271 CS=1271 IP=0100 NV UP EI PL NZ NA PO NC 1271:0100 B83412 MOV AX,1234 -D 0 : 0 ;查看0:07FH内存块的内容 0000:0000 9E 0F C9 00 65 04 70 00-16 00 EB 07 65 04 70 00 .e.p.e.p. 0000:0010 65 04 70 00 54 F
11、F 00 F0-58 7F 00 F0 F5 E7 00 F0 e.p.T.X. 、 -U FFFF : 0 ;反汇编FFFF:0 处的指令 FFFF:0000 CD19 INT 19 FFFF:0002 E000 LOOPNZ 0004 、,课后可参照下列步骤做实验:,-A ;汇编一条指令 1271:0100 MOV AX,1234 1271:0103 -T =100 ;执行该指令 AX=1234 BX=0000 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000 DS=1271 ES=1271 SS=1271 CS=1271 IP=0103 NV
12、 UP EI PL NZ NA PO NC 1271:0103 E9C300 JMP 01C9 -R ;查看指令执行后结果 AX=1234 BX=0000 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000 DS=1271 ES=1271 SS=1271 CS=1271 IP=0103 NV UP EI PL NZ NA PO NC -Q ;退出DEBUG D:,四、8086/8088的存储器组织 1. 内存物理地址的形成 2. 内存单元内容的存放及表示,1.内存物理地址的形成 取指令、取数、存数时,都要访问内存, 被访问内存单元的地址由CPU提供。
13、,8086/8088有20根地址线, 可寻址220 =1M个内存单元, 而CPU内部寄存器均为16位, 故: 20位的地址需由 一个附加部件完成。 这个部件就是地址加法器。,地址加法器的工作原理 可表示为: 物理地址PA = 段地址 偏移地址 = ( 段寄存器 ) 16 + 偏移地址 = ( 段寄存器 ) 10H + 偏移地址 即段寄存器的内容左移4位,加上偏移地址,物理地址PA = 段地址 偏移地址 = ( 段寄存器 ) 10H + 偏移地址 段寄存器有4个: DS、ES、CS、SS 偏移地址由 IP、SP、BX、BP、SI、DI 或一个8位或16位二进制数得到。 这种存储器管理方式叫分段编
14、址。,物理地址PA = 段地址 偏移地址 = ( 段寄存器 ) 10H + 偏移地址 或段寄存器的内容左移4位,加上偏移地址 例:某内存单元的段地址由DS、偏移地址由BX给出。 若( DS) = 2000H, ( BX) = 1000H,计算其物理地址。 PA = ( DS ) 10H + ( BX ) = 2000H 10H + 1000H = 21000H,要点:,(段地址由16位的段寄存器给出,可将段地址直接用16位表示),物理地址20位,段地址20位,偏移地址16位。,物理地址PA = 段地址 偏移地址 = ( 段寄存器 ) 10H + 偏移地址,由16位段寄存器决定有216 = 64
15、 K个段值 由16位偏移地址决定每个段的大小为0 64K 每个段最大64 K,但不一定是64 K,可据需要分配。,用( )表示内存单元的内容: ( 21000H ) = 0FH ( 2000:1000H ) = 0FH ( DS:BX ) = 0FH,指令的地址固定由CS和IP两个寄存器决定。 (代码段寄存器和指令指针寄存器),例 开机或RESET复位后,( CS ) = FFFFH,( IP ) = 0,故8086/8088执行的第一条指令所在内存的地址为: PA = ( CS ) 10H + ( IP ) = FFFF H 10H + 0 = FFFF0H,D: DEBUG ;进入DEBU
16、G -U FFFF:0 ;反汇编FFFF:0处的指令 、 ;显示指令 - Q ;退出DEBUG,实验:在DEBUG下查看开机后执行的第一条指令,讨论: 1. 开机后的第一条指令应该在内存的什么区域? ROM还是RAM? 为什么? 2. 开机后执行的第一条指令的地址是否固定?为什么?,每个内存单元有唯一的物理地址, 但可由不同的段地址和偏移地址构成。(实验二内容),例 某内存操作的段值由 DS 给出,偏移值由BX给出。,若 ( DS ) = 1000H ,( BX ) = 0150H, 则: PA = ( DS ) 10H + ( BX ) = 1000 H 10H + 0150H = 1015
17、0H,若 ( DS ) = 1010H ,( BX ) = 0050H, 则: PA = ( DS ) 10H + ( BX ) = 1010 H 10H + 0050H = 10150H,物理地址相同,就选中同一单元,2内存单元内容的存放及表示,表示为: ( 01000H ) = 1EH ( 01001H ) = 2FH,8086/8088是16位CPU,可对内存进行字节或字操作,例 将字数据1234H写入从02000H开始的内存单元,当往内存写一个字数据时,写入规则是:,写入的结果: ( 02000H ) = 34H ( 02001H ) = 12H,低字节到低地址单元 高字节到高地址单元
18、,D:DEBUG ;进入DEBUG - A ;汇编一条传送指令 1693:0100 MOV word ptr0, 1234 1693:0106 -T ;执行该指令 AX=0000 BX=0000 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000 DS=1693 ES=1693 SS=1693 CS=1693 IP=0106 NV UP EI PL NZ NA PO NC 1693:0106 50 PUSH AX -D DS:0 ;查看结果 1693:0000 34 12 FF 9E 00 9A EE FE-1D F0 4F 03 18 10 8A 03 1693:0010 18 10 17 03 18 10 23 0E-01 01 01 00 02 FF FF FF -Q ;退出DEBUG,实验:在DEBUG下查看数据在
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 河北省邯郸市肥乡区固中学、北高镇中心校联考2026届九年级上学期10月期中考试数学试卷(含答案)
- 广东省广州市荔湾区2025-2026学年第一学期四年级数学期末试卷(无答案)
- 五年级数学上册期中测试卷及答案
- 解读教育部《中小学生健康体检管理办法(2021年版)》全文解读
- 22春北京语言大学《汉语写作》在线作业一答案参考8
- 七年级下语文课堂作业本答案第一单元
- 新部编人教版一年级数学上册期末知识点及答案(三套)
- 电气工程造价管理技术方法
- 深圳职工考试题库及答案
- 人文地理常识试题及答案
- 2026年年长租公寓市场分析
- 生态环境监测数据分析报告
- 2025年下半年四川成都温江兴蓉西城市运营集团有限公司第二次招聘人力资源部副部长等岗位5人考试参考试题及答案解析
- 煤炭装卸施工方案(3篇)
- 八年级历史上册小论文观点及范文
- 重庆康德卷2025-2026学年高一数学第一学期期末达标检测试题含解析
- 浙江省杭州市萧山区2024-2025学年六年级上学期语文期末试卷(含答案)
- 设备隐患排查培训
- 2025至2030磷酸二氢钠行业产业运行态势及投资规划深度研究报告
- 国家事业单位招聘2025中国农业科学院植物保护研究所招聘12人笔试历年参考题库附带答案详解
- 装载机安全培训课件
评论
0/150
提交评论