微机原理与接口技术复习笔记汇总_第1页
微机原理与接口技术复习笔记汇总_第2页
微机原理与接口技术复习笔记汇总_第3页
微机原理与接口技术复习笔记汇总_第4页
微机原理与接口技术复习笔记汇总_第5页
已阅读5页,还剩9页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、微机原理与接口技术复习笔记1.微型计算的组成(冯 诺依曼结构): 输入设备,输出设备,存储器,算术逻辑单元,控制单元算术逻辑单元和控制单元共同构成中央处理单元即 CPU) 2.处理速度: (电子速度) CPU (寄存器: CPU 中的读写存储器) >存储器 >I/O 设备(机械速度)3.三总线结构指:AB (地址总线)、CB (控制总线)、DB (数据总 线)4. 低级语言有机器语言和汇编语言,前者为 01 码,是计算机唯一能 够理解且直接执行的语言,面向问题的程序设计语言称为高级语言5.0 或 1 就是二进制的一位称为 1 比特( bit )八个二进制位称为 1字节( byte

2、),即一个字节八位或者一个字节八比特,两个字节称为 一个字( word )十六位,一般数字后跟 B 为二进制数, D 为十进制 数, H 为十六进制数6.BCD 数运算时出现低位向高位进(借)位,则通过加(减) 0110来手动进行调整;求带符号数的减法时通过加上他的补码来实现计 算,对正数求反加一即可得到他的补码; ASCII 码中 0 为 0110000(48) , A 为 1000001(65), a 为 1100001(97)7.8086CPU 曾是使用广泛的 16 位微处理器,为串行交替的工作方 式,由执行单元EU和总线接口单元BIU两部分构成,执行单元包含 通用寄存器,暂存寄存器,算

3、术逻辑单元 ALU,标志寄存器,EU控制单元,总线接口单元 BIU 包括地址加法器,内部寄存器,指令队列缓冲器,总线控制单元, EU 实际上不与外界打交道,所有与外部 的操作都在 BIU 的控制下完成8.EU中ALU算术逻辑单元完成八位或者十六位的二进制运算,结果 通过内部总线通过寄存器组或 BIU 的内部寄存器,等待写入存储器, 暂存寄存器用来暂时存放参加运算的操作数,经 ALU 算术逻辑单元 运算后置入 FR 标志寄存器中保存, EU 控制器负责从 BIU 的指令队 列中取指令,根据 指令要求 EU 内部各部件发出控制命令9.三类寄存器段寄存器(内部寄存器):CS( Code Segmen

4、t ):保存代码段的段地址,代码段用于存储程 序的指令。SS( Stack Segment ):保存堆栈段的段地址,堆栈段用于形成堆 栈区。DS(Data Segment ):保存数据段的段地址,数据段用于暂存原始 数据和处理后的中间结果及最终结果。ES(Extra Segment ):保存扩展段的段地址, 扩展段与数据段类似,般情况下,数据段用于存储局部变量,扩展段用于存储全局变量。标志寄存器:CF(Carry Flag ):进位 / 借位标志。(最高位)PF(Parity Flag ):奇偶标志。(置位位的个数,为偶则 PF=1 ,表 示为PE;为奇则PD=0,表示为PO)AF( Auxi

5、liary Carry Flag ):辅助进位 /借位标志,用于 BCD 加法的调整。(运算的低四位产生了进位或借位, AF=1 ,表示为 AC;否则 AF=0 ,表示为 NA )ZF(ZeroFlag ):零标志。(运算结果为 0,则标志置位;否则复位)SF(SignFlag ):符号标志,用于标志符号的正负。(运算结果最高位为 1,则标志置位,表示为 NG ;否则标志复位,表示为 PL)OF(Overflow Flag ):溢出标志,用于标志符号数的运算结果是否超出表达范围(无符号数的溢出以 CF 标志)。(双高异或判别)另外 3 位通过人为设置, 用以控制 8086 的 3 种特定操作,

6、 称为控制标志。TF(Trap Flag ):陷阱标志,也称为单步标志,用于程序的单步执行调试。IF (Interrupt Flag ):中断标志。(IF=1,表示为El,即允许响应可屏蔽中断的请求;IF=0,表示为DI,即禁止响应可屏蔽中断的请求)DF( Direction Flag ):方向标志。( DF=1 ,表示为 DN ,即 down ,串操作后地址指针自动减量;DF=0,表示为UP,即up,串操作后地址指针自动增量)通用寄存器:AX( Accumulator ),累加寄存器;主要用于乘除运算和输入输出操作时存储操作数、优化移动操作。BX( Base),基寄存器;主要用于存储器间接寻

7、址时存储数据段的基地址。CX( Counter ),计数寄存器;主要用于循环、重复、移位操作时 存储计数值。DX(Data ),数据寄存器;主要用于乘除运算时存储操作数、输入 输出操作间接寻址时存储 I/O 地址。SP( Stack Pointer ),堆栈指针寄存器;用于存储站定的偏移地址。BP( Base Pointer )基指针寄存器; 主要用于存储器间接寻址时存储 堆栈段的基地址。SI(Source Index ),索引源寄存器;主要用于存储器间接寻址时存 储索引地址、串操作时存储原串偏移地址。DI (Destination Index ),目的索引寄存器 ;主要用于存储器间接寻址时存

8、储索引地址、串操作时存储目的串偏移地址。10.较高存储器地址的字节存放该字的高8 位,较低存储器地址的字节存放在该字的低 8 位;物理地址 =16dX段基址+偏移地址11.8086 的 7 种寻址方式: 立即数寻址 寄存器寻址 直接寻址寄存器间接寻址基址/变址寻址(SI只能对应BP和BX,DI 只能对应 BP 和 BX)基址变址相对寻址12.N 一般指立即数, M 指存储器, R 指寄存器13.8086 指令集通用数据传输指令:MOV 、PUSH 、POP、XCHG累加器专用传输指令:IN、OUT、XLAT、LEA、LDS、LES算数运算指令:ADD、ADC (考虑CF标志位的加)、INC (

9、自加1八DAA (对压缩BCD码加法操作的自动校正 0110 )、AAA (其余加法校正)、 SUB、 SBB、 DEC、 DAS、 AAS、 CMP (比较指令,本质是相减但是不计算结果只影响标志位)、NEG、(I)MUL、 AAM 、I)DIV、 CBW、 CWD、 AAD、 NOT、 AND 、 OR、 XOR、 TEST本质是 AND 但是不计算结果只影响标志位)、 SHR 、 SHL、 ROR、ROL、JMP (无条件跳转)、条件跳转多涉及标志位的情况、LOOP循环指令,每次执行该指令 CX-1 )14. 汇编语言程序设计: 变量定义,具体的常见变量类型有 DB(8 位)、 DW 、

10、 DD?是随机数DUP 能用于重复定义 LENTH 则用于求解有 DUP 重复了多少次PTR用于强制类型转换用'单引号引起来部分为 ASCII 码形式 段定义以 SEGMENT 开始 ENDS 结束15. 接口包含有数据信息(数字量,模拟量, A/D 转换,开关量), 状态信息(表征外设工作状态的信息),控制信息( CPU 通过接口 发出的控制外设工作的信息)1 6.接口是 CPU 与外设间的桥梁17.接口在电路中的作用:数据缓冲功能,寄存器和锁存器解决告诉主机与低俗外设间的速度匹 配功能 端口选择功能, CPU 在一时刻只能与一个端口交换信息 信号转换功能,外设与总线信号的统 接收和

11、执行 CPU 的命令功能 中断功能,中断 CPU 使其处理突发事件 可编程功能,可编程芯片直接改变接口驱动程序就可以实现更新 数据宽度和数据格式转换的功能,串并 - 并串 变换18.I/O 端口(接口电路中能被 CPU 直接访问的寄存器地址)编址方 式(统一编址(单片机和 DSP)和独立编址(8086和8088有自己的专有指令)19.端口地址译码,三个口每个口都有一个地址,门电路,译码器,比较器20.CPU 与外设的传送方式,小批量:无条件传送,查询方式传送, 中断方式传送,大批量:DMA (接权CPU)直接存储器存取方式21.可编程芯片 8255 可编程并行接口芯片8253 定时/ 计数器

12、实际例题:1. 寻址方式判断:(1) MOV AXJSll(2) MOV DIJOO(3) MOV IBXIAL(4) MOV |BX|SI|,CX(5) ADDDXaO6H|SIl(6) PUSH AX(7) ADI) DS:11P,AX(«) OR AX,DX源操作数寄存器寻址寄存器寻址寄存器间接基址+变址寄存器寄存器带段趙越寄存器间接寻址寄存器0的操作数 寄存器间接寻址 立80寻址 寄存器 寄存器 变址2. 指令改错:PUSH CL有错Push指令操作数为16位(PUSH CX)ADC AX,OABHOUT 3EBH,AX有错当输出设备地址大于255即大于FFH则应该利用寄存器

13、 DX间接寻址(MOV DX 2EBH ;OUT DX,AX)MUL AL,CL有错MUL指令只有一个操作数乘数默认存放在 AL或 AX 中(MUL CL)MUL AX,25有错乘法指令不能使用立即数(MOV BL,25;MUL BL)ROL DX,5有错移动位数大于1的要使用CL寄存器(MOV DL,5;ROL DX,CL)CALL FAR SUMPOP FR有错寄存器FR不能单独使用(POPF FR)MOV 234H,BX有错立即数不能作为目的操作数(MOV BX 234H)INC SI 有错 不确定是八位还是十六位的目标码 (INC BYTEPTRSI)ADD BX,456H 有 错 B

14、X 类 型 未 知 (ADD WORDPTRBX,456H)INT 0 有错 自加指令不能用于立即数DIV AX,BX 有错 DIV 指令只有一个操作数除数和被除数默认放 在 AX 或 AL 中,结果商放在 AL 或 AX 中余数放在 AH 或 DX 中 (DIVBX)DEC BP 有错 未知类型 (DEC WORD PTRBP)XLA BXADD CX+1 有错没有这种自加的表示方法 (INC CX)DAA AX 有错 DAA 校正命令没有操作数 (DAA)3. 编程题(仅提供核心思路)1 )大小写字母互换 (前提是题目所给字符串只有字母) 参考书91 面例 4-12首先确定大小写通过 AS

15、CII 码加减操作实现转换AGAIN:MOV AL,BXCMP AL , a'JB NEXT ;比匕a小跳转SUB AL,20HMOV BX,ALJMP AA1NEXT: ADD AL,20HMOV BX,ALJMP AA1AA1 :INC BXJMP AGAIN设置结束办法,如遇到 $'结束循环CMP AL, $'JE DONEDONE: MOV AX,4C00HINT 21H2 )找最大或最小值(参考书 96 页例 4-19 )逐个比较,通过地址的偏移实现一个一个的比较LEA SI, STRMOV AH,SI;先将当前数放在最大位置A1: MOV AL,SI;逐个取

16、数开始比较CMP AH,ALJB A2MOV AH,AL;发现更大的数便放入 AH 中A2: INC SIJMP A1循环次数的限制和设置 LOOP 的使用LOOP 的循环次数由 CX 寄存器决定,所以预先给 CX 赋值便设置好了循环次数MOV CL ,5A1: LOOP A1;循环 5 次3 )统计数字或字母的个数方法类似于第一题, 确定其范围然后跳转即可, 设置好记录的寄存器 进行计数4)找正数且为偶数,复数且为奇数的数正负判断用TEST AL, 80H 和JS跳转命令,符号标志位 SF为1的时候表示其为复数 JS 跳转,为 0 正数则不跳转 奇偶判断用TEST AL , 01H和JZ跳转

17、命令,零标志位ZF为1的时候表示其最低位为 0 偶数 JZ 跳转,为 0 则表示其最低位为 1 奇数 JZ不跳转5 )统计一个字( 16 位)中 0 和 1 的个数借助移位命令SHR右移不断改变最低位的值再利用 TEST和JZ判断是 1 还是 0 并做计数,判断方法同第四题6)将 DX 内容分别送到 ALAHBLBH分高位和低位然后利用 AND 与运算 ANDDL, 0FH 屏蔽高四位得;SHR DL,CL的方式得到低四位,用右移 SHR 四位 MOV CL , 4到高四位7 )十六进制转 ASCII 码转 BCD 码十六进制转 ASCII 码主要分是字母形式还是数字形式处理方式也不 同, BCD 码则是要将十六进制化为十进制后进行拆分个十百位ASCII 码转换:书 100 页例 4-24MOV AH,ALAND AL,0FH ;先处理低位CMP AL,0AH ;和 A (=10 )比较JB AA1 ;如果是数字则跳转字母则直接加上 07ADD AL,07AA1 : ADD AL,30H ;对于数字加上 30HMOV BL,ALMOV CL,4SHR

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论