工业用微型计算机第2章重要知识点.doc

上传人:豆**** 文档编号:17578660 上传时间:2022-05-25 格式:DOC 页数:10 大小:151KB
返回 下载 相关 举报
工业用微型计算机第2章重要知识点.doc_第1页
第1页 / 共10页
工业用微型计算机第2章重要知识点.doc_第2页
第2页 / 共10页
点击查看更多>>
资源描述

《工业用微型计算机第2章重要知识点.doc》由会员分享,可在线阅读,更多相关《工业用微型计算机第2章重要知识点.doc(10页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、【精品文档】如有侵权,请联系网站删除,仅供学习与交流工业用微型计算机第2章重要知识点.精品文档.第一章知识点微处理器是微型机的核心芯片,通常简称为MP(Micro Processor),它是将计算机中的运算器和控制器集成在一个硅片上制作的集成电路。这样的芯片也被称为中央处理单元,一般简称为CPU(Central Processing Unit).第一代4位和低档8位微处理器(1971年1973年)第二代中高档8位微处理器(1974年1978年)第三代16位微处理器(1978年1981年)第四代32位高档微处理器(1985年1993年)第五代64位高档微处理器以后Intel又推出Pentium-

2、II微处理器。Advanced Micro Device公司(简称ADM)的K6是与Pentium-II性能相当的CPU。一、无符号数的表示和运算(一)进位计数制人们在日常生活中,采用多种进制的数字系统。最常用的是十进制。例如 199811039109108100后缀B表示二进制;后缀H表示十进制;后缀D表示十进制(也可不加后缀)例如:10011011B是二进制数;9BH是十六进制数;155D是十进制数;这些数都表示同一数值,即十进制的155,只是使用的进制不同而已。1二进制和十六进制间的相互转换(1)十六进制转换为二进制数,不论是十六进制的整数还是小数,只要把每一位十六进制的数用相应的二进制

3、数来代替,就可以转换为二进制。例如9BA61001 1011 1010 0110 即9BA6H100110111010011B(2)二进制转换为十六进制这种转换,可分两步进行:对整部分,从小数点向左数每4位二进制为一组,最后不足的前面补零。对小数部分,从小数点向右数,每4位一组,最后不足4位的后面补0,然后把每4位二进制数用相应的十六进制数代替,即可转换为十六进制数。例如1011011101010100 B 7 5 4 即10110111010101BB754H(2)二进制数转换为十进制数,对所给的二进制数,只要按前述的式(22)展开,即可得到对应的十进制数。例如 10111010B12312

4、11201201111625(3)十进制整数转换为二进制数,把十进制整数转换为二进制数,一般采用除2取余法。例如只要决定的值,就可写出二进制数,因为201,所以(21520)一定是2的整数倍,2152所得的余数即为X0。其转换过程为 2152107(商),余数1x0;107253(商),余数1x1;53226(商),余数1x2;26213(商),余数1x3;1326(商),余数1x4;623 (商),余数1x5;321 (商),余数1x6;120 (商),余数1,商为0,转换结束。故215D11010111B。(4)十进制整数转换为十六进制数,同转换为二进制数的道理一样,也可采用除16取余例如

5、215D转换为十六进制的过程为 2151613 (商),余数7x0; 1316=0 (商),余数13x1; 商为0,转换结束。故215DD7H;通常写成0D7H,D前面的0字说明D不是英文字符D而是数字13。又如何2345D的转换过程为1234516771(商),余数9x0;7711648 (商),余数3x1;48163 (商),余数0x2;3160 (商),余数3x3,商为0,结束。故12345D3039H,然后可化成二进制数0011000000111001B。(二)原码如上所示,正数的符号位用零表示,负数的符号位用1表示,符号位之后表示数值的大小这种表示方法称为原码。例如:x=+114,x

6、原=01110010B x=+114,x原=11110010B(三)反码正数的反码与原码相同。最高位一定为0,代表符号,其余位为数值位。负数的反码其符号位为1,与原码相同,数值位是将其负数的原码的数值位按位取反。例如: x=4,x反11111011B x=0,x反11111111B x=127,x反10000000B显然,反码的0也有2个,X0,x反0000000B(四)补码正数的补码表示与原码相同,即最高位为符号位,用“0”表示,其余位为数值位。而负数的补码为其反码加1即在反码的最低位加1形成补码。例如:x=4,x补x反111111011B111111100BFCH三、8位与16位二进制数的

7、表示范围(一)8位二进制的范围1)无符号数0255(或用0FFH表示)第三节 微型计算机系统的组成一、微型计算机系统的构成微型计算机系统是由硬件和软件两部分组成的,它的层次结构如图所示。 运算器 CPU 控制器 主机 存储器 寄存器 微型机硬件 输入输出接口 外围设备微型机系统 系统软件 微型机软件 应用软件图1 微型计算机系统的组成示意图(一)微型机硬件(1)微处理器,是微机系统的核心部件,简称为CPU,它包括运算器、控制器和寄存器几部分,运算器也叫算逻单元ALU(Arithmetic and Logic Unit)。(2)存储器(Memory)又叫主存或内存,是微机的存储和记忆部件,用以存

8、放程序代码和运算需要的数据。内存通常使用半导体存储器。1)内存容量,以80868088CPU为例,其地址总线为20根,寻址内存的范围为2201MB。这里B是字节(Byte),即每个内存单元内部存放的是一个字节(8位二进制)程序代码或数据,其形式均为二进制数(机器数)。因为8086的地址总线是20根,其寻址范围为1024KB,写成十六进制时就是5位,其地址范围为00000HFFFFFH。2)内存的操作 对内存的操作是读(取)和写(存储)。3)内存的分类 按存储器的工作性质可将内存分为只读存储器(ROM)和随机读写存储器(RAM)两大类。(3)输入输出接口(IO Interface)和外部设备CP

9、U要与很多外部设备进行数据传送,必须通过“IO接口”,所以输入输出接口是CPU与外设之间的桥梁。(4)总线 由上面叙述可以看到微型计算机主要是由微处理器、存储器、IO接口和IO设备所组成,这些部件是用系统总线连接起来的。(二)微型计算机软件微型机的软件是为运行、管理和测试维护而编制的各种程序的总和,没有软件的计算机只是裸机,计算机就无法工作。计算机软件分为系统软件和应用软件,系统软件包括操作系统(DOS及WINDOWS、UNIX、LINUX等)和系统应用程序。三、微型计算机的外围设备一般的计算机,配备有多种外围设备。其输入的外围设备有:键盘、鼠标、扫描仪、输出的外部设备有:显示器、打印机、绘图

10、仪。而软盘和硬盘驱动器既可作为输入又可作为输出设备,而大多数的光盘驱动器(CDROM)是作为输入设备使用的,它可以把CD或VCD光盘中的音乐送入声卡放大,也可以把VCD光盘的图像通过解压缩后的彩色图像在CRT是显示出来。目前,都采用全双工的声卡(AudioPCI混声器)完成声音的接收(有话简接口)、录音、声音合成和声音的播放(有一定功率的放大)。这样,配上较大功率的有源单箱,就可以放送出美丽动听的音乐和歌声。配置上网卡(一种是电话上网的调制解调器,例如56K的MODEM,一种是高速网卡),连接上INTERNET网络,就可以通过IDT NET2PHONE等软件打网络电话,发传真(FAX),收发E

11、NALL,通过WWW进行网上浏览。第四节 微处理器一、Intel 8086/8088微处理器(一)80868088的功能结构微处理器80868088微处理器结构类似,都由算术逻辑单元ALU、累加器、专用和通用寄存器、指令寄存器、指令译码器、定时器控制器等组成,后四部分相当于控制器。不过按功能可以分为两大部分总线接口单元BIU(Bus Interface Unit)和执行单元EU(Execution Unit)。(二)80868088的内部寄存器80868088内部有14个16位寄存器,编程时都要用到,所以必须识记。按其功能,可分为三大类:第一类是通过寄存器(8个),第二类是段寄存器(4个),第

12、三类是控制寄存器(2个)。通用寄存器包括数据寄存器、地址寄存器和变址寄存器。1数据寄存器AX、BX、CX、DX2地址指针寄存器SP、BP3变址寄存器SI、DI4段寄存器CS、SS、DS、ES5控制寄存器IP、FLAGSCF 进位标志位。当进行加法或减法运算时。若最高位发生进位或错位,则CF1,否则CF0;PF 奇偶标志位。当逻辑运算结果中“1”的个数为偶数时,PF1;为奇数时,PF0。AF 辅助进位位。在8(16)位加法操作中,低4(8)位有进位、借位发生时,AF1,否则AF0;ZF 零标志位。当运算结果为零时,ZF1。否则ZF0;SF 符号标志位。当运算结果的最高位为1(即为负数)时,SF1

13、,否则SF0;OF 溢出标志位。当算术运算的结果超出了带符号数的范围,即溢出时,OF1,否则OF0。8位带符号数范围是128127,16位带符号数的范围是3276832767。下面三个是控制标志位。控制标志位被设置后便对其后的操作产生控制作用。TF 跟踪标志位。TF1使CPU处于单步执行指令的工作方式。这种方式便于进行程序的调试。每执行一条指令后,便自动产生一次内部中断,从而使用户能逐条地检查程序。IF 中断允许标志位。IF1使CPU可以响应可屏蔽中断请求。IF0使CPU禁止响应可屏蔽中断请求。IF的状态对不可屏蔽中断及内部中断没有影响。DF 方向标志位。DF1使串操作按减地址方向进行,也就是

14、说,从高位地址开始,每操作一次地址减小一次。DF0使串操作按增地址方向进行。(四)80868088的工作方式80868088有两种工作方式:最小和最大模式,最小模式是单处理器模式,最大模式是多处理器模式,一般接入8087协调处理器。现在,用户使用的大部分都是486以上微处理器,均为最大模式。第二章知识点第一节指令系统计算机的指令系统。可以分为六大类:数据传送指令;算术传送指令;逻辑运算和移位指令;串操作指令;控制转移指令;处理器控制指令。一、指令格式指令是以二进制代码形式表示的操作命令,这种二进制代码称为机器码。寻址方式,通常是指CPU指令中规定的寻找操作数所在地址的方式,80868088CP

15、U内部设置了多个有关地址的寄存器,如各种地址指针寄存器以及变址寄存器等,因而使80868088的基本寻址方式有以下七种。二、立即寻址(Immediate Addrssing)例如:MOV CL,28HMOV AX,3189H三、寄存器寻址(Register Addrssing)指令中指定某些CPU寄存器存放操作数。上述寄存器可能是通用寄存器(8位或16位)、地址指针或变址寄存器,以及段寄存器。例如: MOV SS,AX四、直接寻址(Direct Addrssing)直接寻址指令在指令的操作码后面直接给出操作数的16位偏移地址。这个偏移地址也称为有效地址EA(Effective Address)

16、,它与指令的操作码一起,存放在内存的代码段,也是低8位在前,高8位在后。但是,操作数本身一般存放在内存的数据段。例如: MOV AX,3100H五、寄存器间接寻址六、变址寻址(Indexed Addressing)变址寻址指令将规定的变址寄存器的内容加上指令中给出的位移量,得到操作数的有效地址。80868088CPU中变址寄存器有两个:源变址寄存器SI和目的变址寄存器DI。位移可以是8位或16位二进制数,一般情况下操作数在内存的数据段,但也允许段超越。下面是一条变址寻址指令的例子。 MOV BX,SI1003H七、基址寻址(Based Addrssing)基址与变址相类似,不同之处在于指令中使

17、用基址寄存器BX或基址指针寄存器BP,而不是变址寄存器SI和DI。需要指出一点,当使用BX寄存器实现基址时,一般情况下操作数是在数据段,即段地址在DS寄存器;而当使用BP时操作数通常在堆栈段,即段地址在SS寄存器中。但是,同样允许段超越。下面两条指令是基址寻址的例子。 MOV SI,DATABX MOV BLOCKBP,AX八基址变址寻址(Based Indexed Addre88ing)这种寻址方式是前面已经介绍的两种寻址方式的结合。指令中规定一个基址寄存器(BX和BP二者之一)和一个变址寄存器(SI和DI二者之一),同时还给出一个8位或16位的位移量,将三者的内容相加就得到操作的有效地址。

18、至于段地址,通常由所用的基址寄存器决定。当使用BX存放基址时,段地址一般在DS寄存器;当使用BP时,段地址一般在堆栈段SS中,但当指令中标明是段超越时例外。以下是一条基址加变址寻址指令的例子: MOV AX,COUNTBXSI第二节 80868088的指令系统一、数据传送指令(Data transfer)数据传送指令是程序中使用最多的指令,这是因为无论程序针对何种具体的实际问题,往往都需要将原始数据、中间结果、最终结果以及其他各种信息,在CPU的寄存器和存储器之间传送。数据传送指令按其功能的不同,可以分为以下四组:通用数据传送指令;输入输出指令;目标地址传送指令;标志传送指令。以下是MOV指令

19、的几个例子:MOV AX,CS;段寄存器至通用寄存器MOV AL,125;立即数至寄存器MOV MEM,15;立即数至存储器,直接寻址MOV SI,BX;寄存器至寄存器MOV DS,AX;通用寄存器至段寄存器MOV BX,50H;立即数至存储器,寄存器间址MOV MEM,AX;寄存器至存储器,直接寻址MOV MEM,DS;段寄存器至存储器,直接寻址MOV DISPBX,CX;寄存器至存储器,基址寻址MOV AX,DISPSI;存储器至寄存器,变址寻址MOV DS,MEM;存储器至段寄存器,直接寻址MOV AX,DISPBXSI;存储器至寄存器,基址变址寻址PUSH(Push word onto

20、 stack)推入操作 POP(Pop word off stacks)弹出操作指令格式及操作:PUSH src;(SP) (SP)2,首先,堆栈指针2送给堆栈指针 (SP)1:(SP)(src),再把源操作数(字)推入堆栈中POP dest;(dest) (SP)+1:(SP),首先,堆栈的内容弹出到目的操作数 (SP) (SP)+2,再使堆栈指针加2这是两条堆栈操作指令,PUSH指令将寄存器或存储器的内容推入堆栈;POP指令将堆栈中的内容弹出到寄存器或存储器,但都是字操作。PUSH和POP指令的操作数可能有三种情况:1)寄存器2)段寄存器3)存储器无论那种操作数,其类型必须是字操作数(16

21、位),如果推入或弹出堆栈的寄存器操作数,则应是一个16位寄存器。如果是存储器操作数,是两个地址连续的存储单元。如:PUSH AX;通用寄存器椎入堆栈PUSH BP;基址指针寄存器推入堆栈PUSH DATASI;两个连续的存储单元推入堆栈POP DI;从堆栈弹出到变址寄存器POP ES;从堆栈弹出至段寄存器POP ALPHEBX;从堆栈弹出到两个连续的存储单元堆栈的用途很多,例如调用子程序(或过程),发生中断时都用推入堆栈的办法来保护断点的地址,而当子程序返回时再将断点地址从堆栈中弹出到IP,以便继续执行主程序。输入输出指令共两条。输入指令IN用于从外设端口接收数据,输出指令OUT向端口发送数据

22、。指令格式及操作:IN acc, port;(acc) (port)OUT port ,acc;(port) (acc)目标地址传送指令(Address object transfer)80868088CPU提供了三条把地址指针写入寄存器或寄存器对的指令,它们可以用来写入近地址指针和远地址指针。这三条指令是LDS、LES、LEA。LEA reg16 mem16LEA指令将一个近地址指针写入到指定的寄存器。指令中的目标寄存器必须是一个16位通用寄存器,源操作数必须是一个存储器,指令的执行结果是把源操作数的有效地址即16位偏移地址传送到目标寄存器。例如LEA BX,BUFFERLEA AX,BPD

23、I二、算术运算指令(Arithmetic)算术运算指令共有以下五组:加法运算指令减法运算指令乘法运算指令除法运算指令转换指令(一)加法指令(Addition)加法指令包括普通加法(ADD)指令、带进位加法(ADC)指令和加1(INC)指令,另外还有两条加法调整指令,即ASCII调整(AAA)和十进制调整(DAA)指令。1ADD(Addition)指令格式及操作: ADD dest ,src;(dest) (dest)+(src)ADD指令将目标操作数与源操作数相加,并将结果存回目标操作数。加法指令将影响大多数标志位。3INC(Increment by 1),加1指令指令格式及操作:INC de

24、st(dest) (dest)1INC指令将目标操作数加1,指令将影响大多数标志位,如SF、ZF、AF、PF和OF但对进位标志CF没有影响。(二)减法相令(Subtraction)8086/8088CPU共有七条减法指令,它们是普通减法(SUB)、带借位减(SBB)、减1(DEC)、求补(NEG)、比较(CMP)指令,以及减法的ASCII调整(AAS)和十进制调整(DAS)指令,重点是SUB、DEC、CMP指令。SUB(Subtraction)指令格式及操作:SUB dest,src;(desd) (desd) (src)SUB指令将目标操作数减源操作数,结果送回目标操作数。指令对标志位SF、

25、ZF、AF、PF、CF和OF有影响操作数的类型与加法指令一样,即目标操作数可以是寄存器或存储器,源操作数可以是立即数、寄存器或存储器,但不允许两个存储器相减。既可以字节相减,也可以字相减。例如,SUB AL,98H;寄存器减立即数 SUB BX,CX;寄存器减寄存器 SUB DX,VAR1;寄存器减存储器DEC(Decrement by 1)减指令指令格式及操作:DEC dest;(dest) (dest)1DEC指令将目标操作数减1,指令对标志位SF、ZF、AF、PF和OF有影响,但不影响进位标志CF。操作数的类型与INC指令一样,可以是寄存器或存储器(段寄存器不可)。字节操作或字操作均可。

26、例如,DEC BL8位寄存器减:DEC CX;16位寄存器减1DEC BYTE PTR BX;存储器减1,字节操作DEC WORD PTR BPDI;存储器减1,字操作CMP(Compare)比较指令指令格式及操作:CMP dest,src;(dest)(src)不把差值回送给目的的操作数,影响标志,这条比较指令经常使用,并不把结果送给目的操作数,两个操作数不变,比较后影响标志,使程序根据比较后的标志转移。(三)乘法指令(Multiplication)80868088CPU可以通过执行一条指令完成乘法或除法运算。乘法指令共有三条:无符号数乘法指令(MUL)、带符号数乘法指令(IMUL)以及乘法

27、的ASCII调整指令(AAM)。1MUL(Multiplication unsigned)无符号数乘法指令格式:MUL src指令操作为,字节乘法(AX)(src)(AL) 字乘法(DX:AX)(src)(AX)MUL指令对标志位CF和OF有影响,但SF、ZF、AF和PF不确定。80868088CPU有三条除法指令,它们是无符号数除法指令(DIV)、带符号数除法指令(IDIV)以及除法的ASCII调整指令(AAD)。DIA(Division unsigned),无符号数除法指令指令格式: DIV srcDIA指令使大部分标志位如SF、ZF、AF、PF、CF和OF的值不确定。例比较两个字符串,找

28、出其中第一个不相等字符的地址。如果两字符串全部相同。则转到ALLMATCH进行处理。这两个字符串长度均为20,首地址分别为STRING1和STRING2。LEA SI,STRING1;(SI)字符串1首地址LEA DI,STRING2;(DI)字符串2首地址MOV CX,20;(CX)字符串长度CLD;清方向标志DFREPE CMPSB;如相等,重复进行比较JCXZ ALLMATCH;若(cx)=0,跳至ALLMATCHDEC SI;否则(SI)1DEC DI;(DI)1INT 3;返回DEBUGALLMATCH:MOV SI,0MOV DI,0INT 3;返回DEBUG控制转移指令(Cont

29、rol transfer)8086/8088CPU提供了很多指令用于控制程序的转移。这类指令是以下四种:转移指令、循环控制指令、过程调用指令和中断指令,下面分别进行讨论。(一)转移指令转移是一种将程序从一处改换到另一处的最方便的方法。在CPU内部,转移是通过将目标地址传送给指令指针寄存器IP来实现的。转移指令包括无条件转移指令和条件转移指令。1、无条件转移指令JMP(JumP)JUMP指令的操作是无条件地将控制转移到指令中规定的目的地址。另外,目标地址可以用直接的方式给出,也可以用间接的方式给出,JMP指令对标志位没有影响。(1)段内直接转移 指令格式及操作:JMP near_label;转移

30、到近标号,(IP)(IP)disp(16位)例:在内存的数据段中存放了若干个8位带符号数,数据块的长度为COUNT(不超过255),首地址为TABLE,试统计其中正元素、负元素及零元素的个数,并分别将个数存入PLUS、MINUS和ZERO单元。为了统计正元素。负元素和零元素的个数,可先将PLUS、MINUS和ZERO三个单元清零,然后将数据表中带符号数逐个取入AL寄存器并使其影响标志位,再利用前面介绍的JS、JZ等条件转移指令测试该数是一个负数、零还是正数,然后分别在相应的单元中进行计数。程序如下:XOR AL,AL ;(AL)0MOV PLUS,AL ;清PLUS单元MOV MINUS,AL

31、 ;清MINUS单元MOV ZERO,AL ;清ZERO单元LEA SI,TABLE ;(SI)数据表首址MOV CX,COUNT ;(CX)数据表长度CLD ;清标志位DFCHECK:LODSB ;取一个数据到AL中OR AL,AL;使数据影响标志位JS XI ;如为负,转X1JZ X2 ;如为零,转X2INC PLUS ;否则为正,PLUS单元加1JMP NEXTX1:INC MINUS ;MINUS单元加1JMP NEXTX2:INC ZERO ;ZERO单元加1NEXT:LOOP CHECK ;CX减1,不为零,转CHECKINT 3上面的程序中LOOP指令是一条循环控制指令,它的操作是先将1(CX)1,然后判断是否CX的内容为0?如果不等于0,则转移到所指的标号CHECK,如果(CX)0,则执行下一条指令。DEBUG调试程序的简单应用DEBUG调试程序的功能DEBUGCOM或DEBUGEXE是随DOS操作系统提供的。键入该程序(DEBUG)后,出现提示符,它具有如下命令:A为汇编命令;U为反汇编命令;T为跟踪命令;D为显示内存命令;E为修改内存命令;F为填充命令;R为检查和修改寄存器命令;G为执行程序命令;L为装入内存命令;N为给程序命名的命令;I为输入,O为输出命令;M为传送内存命令;W为存盘命令,Q为结束DEBUG,回到DOS命令。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 小学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁