资源预览内容
第1页 / 共32页
第2页 / 共32页
第3页 / 共32页
第4页 / 共32页
第5页 / 共32页
第6页 / 共32页
第7页 / 共32页
第8页 / 共32页
第9页 / 共32页
第10页 / 共32页
亲,该文档总共32页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
第1章 基础知识,1.1 微型计算机概述 1.2 汇编语言及特点 1.3 数据表示,开 始,返回目录,1.1 微型计算机概述,1.1.1 微型计算机的特点 1.1.2 微型计算机系统的层次,返回本章首页,1.1.1 微型计算机的特点,电子计算机从性能、体积上通常可分为巨型机、大型机、中型机、小型机、微型机和单片机等六类。微型计算机(简称微型机、微机)是伴随着大规模集成电路的发展而诞生的,它有以下几个特点: (1)采用大规模和超大规模集成电路,主流的微处理器采用单片VLSI形式。 (2)标准的工业化装配结构,体积小重量轻,便于系统升级。 (3)开放的标准体系结构,多元化大规模工业化生产,性能价格比高。 (4)微型计算机的应用范围十分广泛,信息化社会中它无所不在。,返回本节,1.1.2 微型计算机系统的层次,1,微处理器(Microprocessor) 2,微型计算机(Microcomputer) 3,微计算机系统(Microcomputer system),1,微处理器(Microprocessor),微型计算机的产生与发展主要表现在其核心部件微处理器的发展上,每当一种新的微处理器出现后,都能带动微型计算机其它部件的发展。 不包含微型计算机硬件的全部功能,但它是微型计算机控制、处理的核心。 单片VLSI电路,体系结构技术、工作频率已达空前高的水平。 主流微处理器具有通用性,不仅用于微型机也用于工作站及超级计算机。 由算逻部件、寄存器、控制部件组成。,通 用 寄 存 器,专 用 寄 存 器,控制逻辑,ALU,A,B,内部总线,微处理器结构框图,2,微型计算机,微型计算机是指以微处理器为核心,配以存储器、输入输出接口和相应的辅助电路所构成的裸机。把微型计算机集成在一个芯片上就构成了单片微型计算机(单片机)。 微处理器:执行指令的核心。 存储器:指令码、操作数、结果的存储。 外围接口电路:并口、串口、外存接口、显示器接口、网络接口、声音接口等。 系统总线:不同层次的总线将上述模块连接起来,作为各种信息的通路,按信息类别分为数据、地址、控制三类总线。,微处理器 (up),总线控制逻辑,数据总线,控制总线,输入/输出 接口电路,存储器,地址总线,微计算机基本结构,3,微型计算机系统,微型计算机系统是指以微型计算机为主体,配以相应的外围设备及其它专用电路、电源、面板、机架以及软件系统所构成的系统。 微型计算机:微处理器、存储器、外围接口电路、系统总线。 软件:系统软件、中间软件、应用软件。 外部设备:软驱、硬驱、光驱、键盘、鼠标、显示器。 电源、机箱、控制面板。,算术逻辑单元 寄存器阵列 控制器电路,数据总线 地址总线 控制总线,只读存储器 随机访问存储器,串行输入输出接口 并行输入输出接口 外存储器接口 显示器接口等等,键盘、鼠标 显示示器、打印机 软磁盘驱动器 硬磁盘驱动器 光盘驱动器等等,微处理器,系统总线,内存储器,外围接口电 路,电源、机箱、控制面板,系统软件 中间件 应用软件,软件,外围设备,微型计算机系统,微型计算机,微处理器,微计算机, 微计算机系统三者关系,C,P,返回本节,1.2 汇编语言及特点,1.2.1 机器语言 1.2.2 汇编语言 1.2.3 高级语言 1.2.4 汇编语言示例和特点,返回本章首页,1.2.1 机器语言,计算机能够直接识别的数据是由二进制数0和1组成的代码。机器指令就是用二进制代码组成的指令,一条机器指令控制计算机完成一个基本操作。 用机器语言编写的程序是计算机惟一能够直接识别并执行的程序,而用其他语言编写的程序必须经过翻译才能变换成机器语言程序,所以,机器语言程序被称为目标程序。,返回本节,1.2.2 汇编语言,为了克服机器语言的缺点,人们采用助记符表示机器指令的操作码,用变量代替操作数的存放地址等,这样就形成了汇编语言。所以汇编语言是一种用符号书写的、基本操作与机器指令相对应的(一一对应)、并遵循一定语法规则的计算机语言。 用汇编语言编写的程序称为汇编源程序,扩展名为ASM。 汇编语言是一种符号语言,比机器语言容易理解和掌握,也容易调试和维护。但是,汇编语言源程序要翻译成机器语言程序才可以由计算机执行。这个翻译的过程称为“汇编”,这种把汇编源程序翻译成目标程序的语言加工程序称为汇编程序。,返回本节,1.2.3 高级语言,汇编语言虽然较机器语言直观,但仍然烦琐难懂。于是人们研制出了高级程序设计语言。高级程序设计语言接近于人类自然语言的语法习惯,与计算机硬件无关,易被用户掌握和使用。 目前广泛应用的高级语言有多种,如BASIC、FORTRAN、PASCAL、C、C+等等。,返回本节,1.2.4 汇编语言示例和特点,1,汇编语言程序示例,2,汇编语言的特点 1)汇编语言与处理器密切相关。 2)汇编语言程序效率高。 3)编写汇编语言源程序比编写高级语言源程序烦琐。 4)调试汇编语言程序比调试高级语言程序困难。,3,汇编语言的主要应用场合 1)程序执行占用较短的时间,或者占用较小存储容量的场合。 2)程序与计算机硬件密切相关,程序直接控制硬件的场合。 3)需提高大型软件性能的场合。 4)没有合适的高级语言的场合。,返回本节,1.3 数据表示,1.3.1 数值数据 1.3.2 字符数据,返回本章首页,1.3.1 数值数据,计算机中数据表示常用二进制、八进制、十六进制和十进制: 二进制:由一串0、1组成,其后跟字母B; 十进制:由09的数字组成,其后跟字母D,可缺省; 八进制:由数字07组成,其后跟字母O或Q; 十六进制:由09及AF组成,其后跟字母H,如果数的第一个字符是AF,则应在其前加数字0。 数值数据分为有符号数和无符号数。无符号数最高位表示数值,而有符号数最高位表示符号。有符号数有不同的编码方式,有原码、反码和补码,常用的是补码。,1. 原码,最高位表示符号(正数用0,负数用1),其他位表示数值位,称为有符号数的原码表示法。 【例1.3.1】有符号数的原码表示。 X=45=00101101B X原= 00101101B X= -45, X原=10101101B 原码表示简单易懂,但若是两个异号数相加(或两个同号数相减),就要做减法。为了把减法运算转换为加法运算就引进了反码和补码。,. 反码,正数的反码与原码相同,符号位用0表示,数值位值不变。负数的反码符号位用1表示, 数值位为原码数值位按位取反形成,即0变1、1变0。 【例1.3.2】有符号数的反码表示。 X=45=00101101B, X反=00101101B X=-45, X反=11010010B,3. 补码,正数的补码与原码相同,即符号位用0表示,数值位值不变。负数的补码为反码加1形成,即负数的数值位按位取反后再加1。 对一个二进制数按位求反后在末位加1的运算称为求补运算。 对一个正数的补码将其符号位和数值位都按位求反后再在末位加1,可以得到与此正数相对的负数的补码;对负数的补码同样操作可得到与此负数相对的正数的补码,即 X补 求补 -X补 求补 X补 【例1.3.3】有符号数的补码表示。 X=45=00101101B X补=00101101B X=-45 X补=11010011B,补码运算时,不必判断数的正负,符号位直接参与运算能得到正确的结果,符号位进位的自然丢失不会影响结果的正确性。 N位的补码运算如果结果超出了-2(n-1) +2(n-1)-1的范围,就称为发生了“溢出”。判断溢出的方法主要根据符号位的进位和最高数值位的进位状态来判断结果有无溢出,设最高位向符号位的进位用CP表示,符号位的进位用CS表示,则有: 若CPCS=0,表示无溢出,溢出标志V=0; 若CPCS=1,表示有溢出,溢出标志V=1。,4. 符号扩展,在数据处理时,有时需要把8位二进制数扩展成16位二进制数,当要扩展的数是无符号数时,可在最高位前扩展8个0。如果要扩展的数是补码形式的有符号数,那么,就要进行符号位的扩展,符号扩展后,其结果仍是该数的补码。 【例1.3.4】符号扩展表示。 21的8位二进制补码为:00010101 符号扩展后21的16位二进制补码为: 0000000000010101。 00010101和0000000000010101都是21的补码。 -21的8位二进制补码为:11101011 符号扩展后-21的16位二进制补码为:1111111111101011。 11101011和1111111111101011都是-21的补码。,5. 数据的表示范围和大小,n位二进制数能够表示的无符号整数的范围是: 0 I 2n-1 n位二进制数补码能够表示的有符号整数的范围是: -2(n-1) I +2(n-1)-1 注意:-128的8位二进制补码形式是10000000,其中1既表示符号又表示数值,以此类推。,6十六进制表示,由于二进制数的基数太小,书写和阅读都不方便.而十六进制的基数1624,这样二进制数与十六进制之间能方便地转换。因此,习惯把二进制数改写成十六进制数,在汇编语言程序设计时尤其如此。 在书写时,为了区别于十六进制和二进制数,通常在十六进制数后加字母H。,返回本节,7原码运算,原码中的符号位仅用来表示数的正、负,不参加运算。进行运算的只是数值部分。原码运算时,应首先比较两个数的符号,若两数的符号相同,则可将两个数的数值相加,最后给结果附上相应的符号;若两数的符号不同,则需比较两数的数值大小,然后将数值较大的数减去数值较小的数,并将数值较大的数的符号作为最后结果的符号。,8反码运算,由反码的定义可以得到反码加、减运算规则如下: S2+S1反= S2反+S1反 S2-S1反= S2反+-S1反 反码的加、减运算规则表明:两数和的反码等于两数的反码之和,而两数差的反码也可以用加法来实现。运算时,符号位和数值位一样参加运算,如果符号位产生进位,则需将此进位加到和数的最低位,称之为“循环进位”。运算结果的符号位为0时,说明是正数的反码,与原码相同;运算结果的符号位为1时,说明是负数的反码,应再对运算结果求反码,才得到原码。,补码运算同反码运算一样,两数差的补码可以用两数补码的加法来实现。补码加、减运算规则是:S2+S1补=S2补+S1补S2-S1补=S2补+-S1补 补码运算时,不必判断数的正负,符号位直接参与运算能得到正确的结果,如果符号位产生了进位,则此进位可“略去”,符号位进位的自然丢失不会影响结果的正确性。运算结果符号位为0时,说明是正数的补码,与原码相同。运算结果符号位为l,说明是负数的补码,应对结果再求补码才得原码。 从上述的讨论可以看出,原码、反码和补码各有优缺点。原码表示法简单方便,但原码减法必须做真正的减法,不能用加法来代替,因此实现原码运算所需的逻辑电路比较复杂。反码和补码的优点是只需用加法逻辑电路便可实现,并且用补码进行减法运算很方便,它只需进行一次算术相加。而用反码进行减法运算,若符号位产生进位就需进行两次算术相加。而且反码还有一个缺点,就是具有两个零值,这容易在计算过程中产生歧意。 从前面所讲的内容可知,n位二进制数S补码能够表示的有符号整数的范围是: -2(n-1)S+2(n-1)-1 n位的补码运算如果结果超出了-2(n-1)+2(n-1)1的范围,就称为发生了“溢出”。判断溢出的方法主要根据符号位的进位和最高数值位的进位状态来判断结果有无溢出,设最高位向符号位的进位用CP表示,符号位的进位用CS表示,则有: 若CPCS=0,表示无溢出,溢出标志V=0; 若CPCS=1
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号