




已阅读5页,还剩9页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第一章 微机基础知识(仅供参考)1 进位计数制 表示: n-1(N)k= NiKi i=-m 其中:Ni - 第i位数字 n, m n整数位数,m小数位数 K 基数(采用的数字符号的个数) Ki 权在汇编语言中,常用2#,10#,16#,在数的最后用字符B、D、H以示区别。 数制转换(重点)10-2:整数除2取余,小数乘2取整(均从小数点开始)。 例: 115.625 10-16:10-2-162/16-10:按公式计算累加和(按10进制运算规则) 例: 11010101.011/D5.6 - 不为0的位的权之和 2 十进制数与字符的编码表示BCD码用4位2#表示1位10#,逢十进一,4位组中各位的权=8,4,2,1 非压缩、压缩ASCII码(了解)32#运算规则(算术、逻辑)加、减、乘、除与、或、非、异或4 符号数表示(重点)符号表示: 0正,1负,符号在最高位上真值和机器数 真值:未将符号数值化的原始数值 机器数:符号数值化的带符号数机器数的表示法 原码:符号,数值位不变。表示范围? 0的表示? 反码:符号,数值位变反。表示范围?0的表示? 补码:符号,数值位变反+1。表示范围?0的表示? 例:-123转换成二进制数补码 补码的运算 利用公式:X+Y补=X补+Y补 X-Y补=X补+-Y补例:X=-1000101 Y=-0110110, 求X+Y补 第二章 微型计算机概述1微机的结构CPU、存储器(RAM,ROM)、I/O接口、I/O设备、系统总线等 微机与微机系统(软件的作用) PC机主要部件(芯片组的作用,BIOS与CMOS,了解系统总线的标准,PCI总线的体系结构)2 8086/8088微处理器(重点)1) 最小模式下的主要引脚。功能?有效电平?是否三态?地址(20,8根与数据复用)、数据(8)、控制线(IO/M、RD、WR、ALE、DEN等)。2) 内部结构。EU(通用寄存器、ALU、PSW) + BIU(段REG、IP、地址、指令队列)3) 寄存器结构(重点)P47图2.18 通用寄存器: 数据:AX、BX、CX、DX(每个都可分为两个8位寄存器,共8个:AH,AL,.) 指针:SI、DI、SP、BP 控制寄存器:IP、PSW 段寄存器:CS、DS、SS、ES 各寄存器的主要用途?P47-49 (特别注意SI、DI、BX、BP的用法)3存储器寻址(重点) 按字节(存储单元)进行存取,每次可1/2/4个字节 地址线根数与寻址范围的关系 存储单元内容与地址的关系 分段编址: 分段原因:要用16位(可寻址216=64KB)的寄存器寻址1MB(220)的内存空间 存储单元地址的2种表示:物理地址(唯一)、逻辑地址(不唯一) 物理地址表示:20位的真实地址 逻辑地址表示:段:偏移 物理地址的形成方法: 段(在CS/SS/DS/ES中)左移4位+偏移地址(在IP/SP/BP/BX/SI/SI中) 例:2AFBH:15ADH所对应的真实物理地址? 段寄存器的使用(P50表2.7)(重点) 不同类型数据在内存中的存放顺序 堆栈特点及堆栈操作(有关指令:PUSH、POP、CALL、RET、INT、IRET)以上指令引起怎样的堆栈操作?4. 状态寄存器PSW(重点) 共16位,只用9位(状态6,控制3) 2类: 状态-AF、CF、OF、PF、SF、ZF 置1/置0的条件? 算术和逻辑操作对状态标志的影响:(算术-全部(INC/DEC不影响CF),逻辑-PF、SF、ZF) 传送操作对状态标志的影响:除POPF/SAHF外,均不影响标志位。 控制-DF、IF、TF 置1(置0)所产生的影响?5. 主要的PC总线信号D7-D0、A19-A0、IOW#、IOR#、MEMW#、MEMR#、INTR、INTA第三、四章 指令系统及汇编语言程序设计1寻址方式l 什么是寻址方式:寻找、计算(取得)操作数地址的方法l 关于操作数的寻址方式,7种:立即:操作数在指令中(不允许使用段超越)。REG(寄存器):操作数在某一寄存器中(不允许使用段超越)*直接:操作数的地址在指令中*REG间接:操作数的地址在BP/BX/SI/DI寄存器中*寄存器相对:操作数的地址为(SI)/(DI)/(BX)/(BP)+位移量*基+变:操作数的地址为(BX)/(BP)+(SI)/(DI) *相对基+变:操作数的地址为(BX)/(BP)+(SI)/(DI)+位移量(带*的为存储器操作数)特例串操作:源串地址固定在SI中、目的串地址固定在DI中l 说明转移地址的寻址方式,4种:段内相对:相对于IP,地址位移量为1个或2个字节段内间接:寄存器或存储器的内容为转移地址,2个字节段间直接:直接给出段和偏移段间间接:存储器的内容为转移地址,4个字节注意事项:l 能够参与寻址的寄存器:BX,BP,SI,DI,DX(仅用于I/O指令)l 对存储器操作数:用BX,SI,DI时,默认的段地址在DS中,用BP时,默认的段地址在SS中。若数据不在默认段中,应使用段超越。l 指令中不可同时出现SI/DI,也不可同时出现BX/BP。(即一条指令中只能出现一次)2指令系统指令的构成:操作码、操作数(0个、1个或2个,隐含)数据传送、串操作1) 可实现RR/M/Stack、AccI/O、FStack、NumM/R之间的传送。MM只能用MOVS串指令实现。2) 包括:MOV、PUSH/POP、IN/OUT、LEA、LDS/LES和LODS/STOS、MOVS。3) 串操作指令的特点:DS:SI寻址源,可以段超越;ES:DI寻址目的,不允许段超越。自动修改DI / SI的内容,增减()决定于DF,增减量(1/2)由操作数的类型决定。若有串重复前缀,则也自动将CX减量。可加重复前缀REP,重复次数由CX决定。若加重复前缀REPZ/REPNZ,则重复次数由CX和ZF共同决定。(在LODS指令前加串重复前缀无意义)可在指令后加上B(字节操作)或W(字操作)。4) 段寄存器只能通过MOV、PUSH、POP进行操作,但修改CS是不合法的。没有将立即数送入段寄存器的指令,给段寄存器赋值只能通过通用寄存器间接传送。5) PUSH/POP 可实现R/M/FS。每次传送2个字节。低字节在(SP-1),高字节在(SP-2)。同时使堆栈指针自动修改。6) LEA/LDS/LES将操作数EA装入寄存器/寄存器组。7) IN/OUT实现AccI/O,I/O端口的地址在指令中(0-255)或在DX中(0-65535)。8) 凡具有两个操作数的指令操作数类型应相同 算术运算、逻辑运算和移位1) 所有这类运算的操作数都不允许是段寄存器。2) 算术/逻辑运算指令:一般要影响全部6个状态标志。例外:INC/DEC不影响CF。3) ADD/ADC/SUB/SBB8/16位操作,不带进位/带进位。4) INC/DECREG/MM(8/16位)加/减1。操作数不允许是立即数。5) CMP是特殊形式的减法指令。除不存储结果外,其他同SUB。用于比较两个操作数之间的大小关系。6) MUL/IMUL8/16位操作,结果16/32位。 8位乘:操作数*AL(隐含),结果在AX中16位乘:操作数*AX(隐含),结果在DX:AX中7) DIV/IDIV16/32位操作,结果8/16位。 8位除:AX(隐含)/操作数ALAH 16位除:DX:AX(隐含)/操作数AXDX (注意:当商的结果超过了相应寄存器的表示范围,产生除法错中断)只需了解,不是重点8) AAA/AAS对不压缩的BCD码进行加/减法调整。隐含操作数为AL和AH。用在加/减法指令后。DAA/DAS对压缩的BCD码进行加/减法调整。隐含操作数为AL。用在加/减法指令后。AAM对不压缩的BCD码进行乘法调整。隐含操作数为AL和AH。用在乘法指令后。AAD对不压缩的BCD码进行除法调整。隐含操作数为AL和AH。用在除法指令前。9) AND/OR/XOR/NOT8/16位。按位操作,无进借位。10) TEST是特殊形式的AND指令。除不存储结果外,其他同AND。用于测试操作数的某些位的状态。(测试多个位是否为同时为1的方法:先AND,再CMP,不要用TEST)11) 移位和循环移位指令共有8种:移位逻辑/算术左移SHL/SAL逻辑右移SHR算术右移SAR 循环移位循环左/右移ROL/ROR带进位循环左/右移RCL/RCR 移位位数:放在CL中,如:MOV CL,4;SHL AX,CL若只移1位则允许以立即数形式放在指令中,如SHL AX,112) 串扫描SCAS:AL/AXES:DI寻址的存储单元13) 串比较CMPS:DS:SI寻址的存储单元ES:DI寻址的存储单元14) SCAS和CMPS指令前可加重复前缀REPZ/REPNZ。重复次数由CX决定。REPZ当ZF=1并且CX0时重复执行;REPNZ当ZF=0并且CX0时重复执行。15)串装入和串送存:LODS和STOS 控制转移、处理器控制1) 标号代表了存放指令的存储单元的地址。通常作为转移指令的目标操作数。 2) 无条件转移指令有3种:短、近、远。短转移(SHORT):转移范围-128+127,段内转移近转移(NEAR):转移范围-32768+32767,段内转移远转移(FAR):转移到系统存储器的任何位置,段间转移(跨段)3) 直接转移有3种:段内短/近转移,段间转移。目的地址放在指令中,分别以运算符SHORT、NEAR PTR、FAR PTR予以标识。4) 间接转移有2种寻址方式:目的地址放在寄存器中(近转移):例:JMP BX 目的地址放在存储器中(近转移为字,远转移为双字)。例:JMP WORD PTRBX; JMP DWORD PTRBX 5) 条件转移全部是直接短转移。常用的有JC/JNC、JZ/JNZ,JL/JNL,JG/JNG等。6) LOOP 指令相当于DEC CX/JNZ 两条指令的组合。它使CX减1,当CX不是零时转移到标号处。循环的其他形式:LOOPZ/LOOPNZ,由CX、ZF共同决定是否转移。7) CALL/RET实现过程调用和过程返回。CALL执行时,它把返回地址(即紧接在CALL后面那条指令的地址IP,CS的内容)压入堆栈,然后转移到过程。段内调用:IP进栈;段间调用:IP、CS都进栈。RET指令把返回地址从堆栈弹出到IP(从近过程返回)或IP、CS(从远过程返回)。8) 中断分为硬件中断和软件中断。软件中断主要是由INT指令产生的。用于处理中断的过程叫做中断处理程序,它是通过中断向量间接调用的。中断处理程序结束后,必须用IRET指令返回被中断的程序。9) 中断向量是中断服务程序的入口地址,4字节(包括偏移和段地址)。中断向量表(0-3FF,4字节/每表项,256个,共1024字节) 中断向量的偏移地址=向量号*4 (段地址0) 例: INT 14H, INT 2FH 的中断向量存放单元=? 10) CPU响应中断后,将PSW、IP和CS压入堆栈,清除T和I标志位,然后根据中断类型号从中断向量表取出中断向量送到CS、IP,从而转到相应的中断处理程序执行。11) 中断处理结束,用IRET指令从堆栈中恢复返回地址(IP,CS)和标志寄存器PSW。12) 中断允许标志位(IF)控制CPU的INTR(可屏蔽中断请求)引脚。STI允许CPU响应可屏蔽中断请求,CLI则禁止。IF标志位不影响软中断(INT指令)。13) CLC/STC/CMC用于清除/置位/取反CF标志。14) CLD/STD指令清除/置位DF标志。它控制串操作的方向。DF=0地址增量,DF=1地址减量。3 汇编语言程序设计方法1) 顺序程序设计要注意语法、汇编语言框架、算法逻辑等方面符合要求。2) 分支、循环程序设计转移条件(CF、ZF、OF、SF、PF)、指令用法(根据标志位)相关指令:Jx;x=C/NC(B/NB)、Z/NZ、G/NG、L/NL、GE/NGE、LE/NLE、A/NA、O/NO、P/PO、S/NS JCXZ LOOP REP/REPZ/REPNZ 3)子程序设计(重点是参数传递方法和堆栈概念)子程序结构(框架):PROC ENDP参数传递方法:寄存器、内存变量(值、指针)、堆栈相关指令:CALL、RET保护/恢复寄存器:入口处和退出前,PUSH/POP4 汇编语言与汇编程序 语句格式:标号:操作码操作数;注释 各种名字的定义规则(包括段名、标号、变量名、常量名、过程名):1、 以包括A-Z、0-9和“?._$ ”5个特殊字符2、 不能以数字开头3、 不能与保留字(指令助记符/伪指令/寄存器名等)重名,使用标号时特别要注意4、 不能重复定义5、 不能超过31个字符 汇编语言程序的结构(框架)数据段名 SEGMENT数据段名 ENDS代码段名 SEGMENT ASSUMECS:代码段名,DS:数据段名 代码段名 ENDS END 主程序的三种结构:开始标号: (1) . . . MOV AH,4CH INT 21H过程名 PROC FAR (2) . . . MOV AH,4CH INT 21H过程名 ENDP过程名 PROC FAR PUSH DS MOV AX,0(3) PUSH AX . . . . . . RET过程名 ENDP 注意:主程序开始处要设置DS、ES段寄存器(有时也要设置SS/SP的初值) 数据项和表达式 操作数构成:REG、存储器单元、数据项 数据项:常量、标号、变量以及三者的组合(表达式) 常量:数字常量2#、16#、10#,字符常量XXX 标号:某条指令的符号地址,定义时要加冒号(:),引用时不要冒号 变量:内存中的数据区 定义格式:变量名 DB(DW,DD) 表达式 表达式:算术、逻辑、关系 算术:+、-、*、/ 逻辑:AND、OR、NOT、XOR 关系:EQ、NE、LT、GT、LE、GE(结果是逻辑值,真-全1,假-全0)例: MOV AX,4*64 ;AX256 MOV AX,40H EQ 64 ;AX0FFFFH 类型操作符:(BYTE、WORD、DWORD、NEAR、FAR)PTR 取段、偏移地址操作符:SEG、OFFSET(变量和标号)例: MOV BX,OFFSET VAR ;BXVAR的偏移地址(或EA) MOV AX,SEG VAR ;AXVAR的段地址 (注意与LEA指令的异同) 指示性语句变量定义:DB、DW、DD、DUP符号赋值: EQU、=段定义: SEGMENT/ENDS、ASSUME定位类型:BYTE、WORD、PARA、PAGE组合类型:PUBLIC、AT、STACK类别名:CLASS(段组名)伪指令SEGMENT指定一个段的开始,ENDS指定一个段的结束。SEGMENT/ENDS必须成对使用。伪指令ASSUME通知汇编程序CS、DS、ES、SS与逻辑段之间的关系用于语法检查。 DOS功能调用(INT 21H,AH=功能号,参数传递:寄存器)1) 输入一个字符:01H,AL=字符Byte 1 Byte 2 字节数=缓冲区大小缓冲区大小 实际键入字符数 输入缓冲区 2)输入字符串:0AH,DX=缓冲区地址(格式: )例:BUFSIZEDBn ;n=ACTSIZEDB? ;实际键入字符数将访在此单元BUFFERDBn DUP(?) ;预留n个字节 3)显示一个字符:02H,DL=字符4)显示一个字串:09H,DX=字串首址(字串以$结束)5)返回DOS系统:4CH 汇编语言程序编制步骤1)编辑EDIT(生成.ASM)2)汇编MASM(输入.ASM,输出.OBJ)3)链接LINK(输入.OBJ,输出.EXE)4)调试DEBUG 宏指令:定义和使用定义: 宏定义名 MACRO形参表 ENDM引用: 宏定义名 实参表可以把“宏”当作指令一样使用,所以也称其为“宏指令”第五章 半导体存储器1 要求1) 分类、特点、工作原理ROM(EPROM,EEPROM),RAM(SRAM,DRAM 刷新方法),CACHE为何能提高计算机性能,工作原理2) 计算构成存储器所需的芯片的数量,位扩、字扩的连接方法3) 利用全译码/部分译码,将存储器芯片连接到系统总线上并映射到任意地址空间4) 给出存储器的地址范围求内存的首址/末址和容量,反之也要会求解5) 根据地址范围用门电路(包括74LS138)构成译码器的方法2 重点1) 基本概念 存储器存储数据的单位:bit存储数据的最小单位Byte存取数据的基本单位,也称存储单元内存以字节为单位进行存取,字长为16/32/64位时,则每次存取2/4/8个单元 存储器的容量:微机系统中存储单元的总和。单位为KB、MB、GB 存储器的编址:地址给每个存储单元分配的顺序编号 寻址范围与地址总线位数的关系:地址线n根,地址范围2n,分布在02n-1 寻址范围与存储容量的关系:寻址范围CPU编址单元的总和,定值存储容量实际配置的物理内存单元的个数,可变 存储芯片的容量:用“单元数每单元位数”表示2) 字扩、位扩及连接方法位扩对位数扩充,如用存储芯片制造内存条字扩对容量扩充,如往微机中扩充内存条字位扩对位数、容量均扩充连接规则:位扩数据线分别引出,地址/控制线并联 字扩地址线/读写信号/数据线并联,片选线分别接高位地址的译码输出 3) 地址译码存储芯片的容量总是小于CPU的寻址空间。也就是说,一个芯片的地址线数总是少于系统地址总线的根数。系统地址总线分为两部分:低位地址线直接接存储芯片;高位地址线则用于片选译码(称为地址译码),用于选择哪个存储芯片工作。全地址译码全部高位地址线都参加片选译码部分地址译码部分高位地址线参加片选译码(一个芯片会对应多个地址范围)常用译码电路用与、或、非门构建,或用74LS138等现成的译码器(牢记74LS138的引脚及使用方法)4) 地址范围、内存容量、首址/末址利用公式: 末址 = 首址容量(字节数)1 容量 = 末址首址1再记住3个关键数字:0000FFH 00100H = 256B000FFFH 01000H = 4KB 00FFFFH 10000H = 64KB例:A8000HCFFFFH, 容量 = CFFFFH-A8000H+1 = 28000H = 64K2+4K8 = 160K 容量64KB, 首址BC000H, 末址 = BC000H10000H-1 = CBFFFH 5) 存储芯片与总线的连接重点是SRAM和EPROM与系统总线的连接方法:数据、地址(译码器)、CS#/CE#、OE第六章 输入输出技术1 概述1) I/O端口的编址 端口地址: I/O接口中的子部件或寄存器的编号 两种编址:统一编址、独立编址,特点及优缺点 8088/8086系统的I/O寻址:直接寻址256个(00FFH),间接寻址(DX)64K个(PC中只允许1024个,03FFH)2) 输入输出的基本方法无条件、查询、中断、DMA只要求基本概念,什么是DMA方式,传输过程? (以上四种方法的特点) 查询用I/O指令读入外设状态(数据准备好/设备空闲),以决定能否进行读写 中断外设准备好时主动向CPU提出申请,CPU暂停当前程序,转入中断服务程序,完成数据传送。中断服务完毕,CPU返回被中断的程序继续执行 DMA在外设与内存之间直接进行数据交换,传输过程由DMAC管理,CPU只进行初始化重点:查询方式的工作流程(读状态端口、判断准备好否、读/写数据端口),编程方法?3) 系统总线中与输入输出有关的主要信号线D0-D7、A15-A0、IOW#、IOR、INTR、INTA2 中断1)基本概念 中断、中断类型、中断向量的作用 CPU的有关引脚INTR、NMI(区别?满足什麼条件CPU才能响应) 中断处理的基本过程请求判优响应处理返回CPU:执行中断服务程序,执行完后返回断点8259:判优、排队、送中断向量(类型)码CPU:响应请求、根据向量码获得中断向量2)8086/8088中断系统P268,6.4.2节 几类中断的优先级别(P274 图6.25):内部中断(。)、NMI、INTR、单步中断 中断向量表的位置与结构(P271) 根据中断类型码(向量码)获得中断向量的方法,即中断向量在表中的位置(会计算)3)8259 主要引脚功能 几个概念:u 中断触发方式:电平、边沿u 普通嵌套与特殊嵌套:(仅在多片级联时需考虑此问题)u 一般屏蔽与特殊屏蔽:为高级别中断服务时是否允许响应低级别的中断。一般屏蔽方式不行(因为ISR位已置位,禁止低级别中断)。特殊屏蔽方式中,使某IMR位置位(屏蔽对应的中断请求),会清除相应的ISR位(一般屏蔽方式中置位IMR不清除ISR) u 中断结束方法:自动结束、利用EOI命令结束u 中断优先级循环:固定优先级、循环优先级(又分为自动循环、指定循环) 8259的初始化ICW1-4、OCW1-3的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 二零二五年度工程审计居间服务合同模板
- 2025版环保建筑材料研发合作合同范本
- 2025版网络安全保密协议使用指南
- 二零二五年度购房贷款合同范本(含房产抵押)
- 2025版工资保密及员工忠诚度保障合同范本
- 2025版航空航天材料股权转让协议正本
- 2025版鸡蛋产品线上线下联合营销推广合同
- 二零二五年度文化旅游融合发展合伙协议书下载
- 2025版文化教育合资合作合同
- 2025版新能源项目担保借款合同样本与范本
- 《冬装销售技巧培训》课件
- 驻校教官培训课件
- 医院信息化调研报告范文
- 轴承装配组装SOP
- 过敏性休克完整版本
- DL∕ T 5100-1999 水工混凝土外加剂技术规程
- 合同未签订提前供货函模板
- 小学必背古诗词182首(带目录及释义)人教(部编版)
- 2024年东南亚一体式直流充电桩市场深度研究及预测报告
- 应急第一响应人理论考试试卷(含答案)
- DZ∕T 0213-2020 矿产地质勘查规范 石灰岩、水泥配料类(正式版)
评论
0/150
提交评论