版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、主讲:,微机原理及应用,李鹤喜,适用于 AP09103-04,微机原理与接口技术-课程介绍,微机原理及接口技术课程 是电子信息工程和电子信息科学与技术专业学生学习和掌 握微型计算机软硬件知识的重要课程,课程的任务是使学生从 理论上和实践上掌握微机的基本组成、工作原理、接口技术及 硬件连接,建立微机系统的整机概念,使学生具有微机系统软 硬件开发和应用的基本能力,为微型计算机在工程技术领域的 应用打下坚实的基础。,微机原理及应用-参考文献,教材:郑学坚,微型计算机原理及应用 其它参考书: 周明德,微型计算机系统原理及应用, 北京:清华大学出版社,2006.6 戴梅萼,微型计算机技术及应用, 北京:
2、清华大学出版社,1991 扬素行,微型计算机系统原理及应用, 北京:清华大学出版社,1995,微机原理及应用-课程内容,章节目录计划学时 第1章 微型计算机系统概述2 第2章 计算机中的数制和编码 2 第3章 8086微处理器4 第4章 8086指令系统 8 第5章 汇编语言程序设计 10 第6章 输入/输出接口4 第7章 中断/定时/DMA控制器8 第8章 模/数及数模接口2 第9章 微型计算机应用实例2,微机原理及应用-先修课程,数字逻辑电路 提供硬件基础 计算机组成原理 确立计算机部件功能 掌握计算机工作原理 高级语言程序设计 掌握基本程序设计方法,先 修 课 程,第1章,1.了解微机发
3、展概况、熟悉典型微处理器和微机系统 2.明确微机两个应用方向 3.了解微机的硬件组成,理解总线及其应用特点、掌握地址、数据、控制总线的概念,第1章教学要求,1.1 微型计算机的发展和应用,1946年,世界上出现第一台数字式电子计算机ENIAC(电子数据和计算器) 发展到以大规模集成电路为主要部件的第四代,产生了微型计算机 1971年,Intel公司设计了世界上第一个微处理器芯片Intel4004,开创了一个全新的计算机时代,以大规模、超大规模集成电路为主要部件,以集成了计算机主要部件控制器和运算器的微处理器为核心所构造出的计算机系统,图片,图片,1.1 微型计算机的发展,第1代:4位和低档8位
4、微机 400440408008 典型产品是Intel公司1971年研制成功的4004(4位CPU)及1972年推出的低档8位CPU 8008。采用PMOS工艺,集成度约为2000只晶体管/片。指令系统比较简单,运算能力差,速度慢(平均指令执行时间为1020s)。软件主要使用机器语言及简单的汇编语言编写。,第2代:中高档8位微机 Z80、I8085、M6800,Apple-II微机 典型产品有1974年Intel公司生产的8080 CPU,Zilog公司生产的Z80 CPU、Motorola公司生产的MC6800 CPU以及Intel 公司1976年推出的8085CPU。它们均为8位微处理器,具
5、有16位地址总线。第二代微处理器采用NMOS工艺,集成度为9000只晶体管/片,指令的平均执行时间为12s。,1.1 微型计算机的发展,图片,1.1 微型计算机的发展,第3代:16位微机 8086808880286,IBM PC系列机 典型产品是1978年Intel公司生产的8086 CPU、Zilog公司的Z8000 CPU和Motorola公司的MC6800 CPU。它们均为16位微处理器,具有20位地址总线。 1982年,Intel公司在8086基础上研制出性能更优越的16位微处理器芯片80286。它具有24位地址总线,并具有多任务系统所必须的任务切换功能、存储器管理功能以及各种保护功能
6、。以80286为CPU组成IBM PC/AT高档16位微型计算机。,图片,1.1 微型计算机的发展,第4代:32位微机 8038680486 32位PC机、Macintosh机、PS/2机 1985年,Intel公司推出了32位微处理器芯片80386,其地址总线也为32位。 1990年,Intel公司在80386基础上研制出新一代32位微处理器芯片80486,其地址总线仍然为32位。它相当于把80386、80387及8KB高速缓冲存储器(Cache)集成在一块芯片上,性能比80386有较大提高。,图片,1.1 微型计算机的发展,第5代:64位微机 Itanium、64位微处理器芯片 微机服务器
7、、工程工作站、图形工作站 第五代微处理器的典型产品是1993年Intel公司推出的Pentium(奔腾,Intel 586) 。Pentium微处理器数据总线为64位,地址总线为36位,有两个并行执行单元及双高速缓冲存储器,工作频率有50MHz、66MHz、133MHz、和166MHz等。,1.2 微型计算机系统的组成,到目前为止,计算机仍沿用1940年由冯诺依曼首先提出的体系结构。其基本设计思想为: 以二进制形式表示指令和数据。 程序和数据事先存放在存储器中,计算机在工作时能够高速地从存储器中取出指令加以执行。 由运算器、控制器、存储器、输入设备和输出设备等五大部件组成计算机硬件系统。,1.
8、2 微型计算机系统的组成,图1.2 微型计算机硬件系统结构,1.2 微型计算机系统的组成,1.2 微型计算机的系统组成,区别3个概念,所谓总线,是指计算机中各功能部件间传送信息的公共通道。所有的信息都通过总线传送。根据传送信息的内容与作用不同,总线可分为三类: (1) 地址总线AB(Address Bus):在对存储器或I/O端口进行访问时,传送由CPU提供的要访问存储单元或I/O端口的地址信息。AB是单向总线。 (2) 数据总线DB(Data Bus):对存储器或对I/O端口进行读写操作时,信息通过数据总线送往CPU或由CPU送出。DB是双向总线。 (3) 控制总线CB(Control Bu
9、s):各种控制或状态信息通过控制总线传送。CB中每根线的传送方向是一定的。,1.2.1 微型计算机系统总线,地址总线AB 输出将要访问的内存单元或I/O端口的地址 地址线的多少决定了系统直接寻址存储器的范围 数据总线DB CPU读操作时,外部数据通过数据总线送往CPU CPU写操作时,CPU数据通过数据总线送往外部 数据线的多少决定了一次能够传送数据的位数 控制总线CB 协调系统中各部件的操作,有输出控制、输入状态等 控制总线决定了系统总线的特点,例如功能、适应性等,1.2.1 总线信号,举例,举例,图1.3所示为一个简化的微处理器模型(虚线框内),它由运算器(ALU)、控制器(CU)和内部寄
10、存器(R)三部分组成。现将各部件的功能简述如下。,1.2.2 微处理器,图1.3 微处理器结构,1.2.2 微处理器,1运算器 运算器又称算术逻辑单元(ALU,Arithmetic Logic Unit),用来进行算术或逻辑运算以及移位循环等操作。参加运算的两个操作数一个来自累加器A(Accumulator),另一个来自内部数据总线,可以是数据缓冲寄存器DR(Data Register)中的内容,也可以是寄存器阵列RA(Register Array)中某个寄存器的内容。,1.2.2 微处理器,2控制器 控制器又称控制单元(CU,Control Unit),是全机的指挥控制中心。它负责把指令逐条
11、从存储器中取出,经译码分析后向全机发出取数、执行、存数等控制命令。控制器中包括以下几部分: (1) 指令寄存器IR(Instruction Register):用来存放从存储器取出的将要执行的指令码。当执行一条指令时,先把它从内存取到数据缓冲寄存器DR中,然后再传送到指令寄存器IR中。,1.2.2 微处理器,(2) 指令译码器ID(Instruction Decoder):用来对指令寄存器IR中的指令操作码字段(指令中用来说明指令功能的字段)进行译码,以确定该指令应执行什么操作。 (3) 可编程逻辑阵列PLA(Programmable Logic Array):用来产生取指令和执行指令所需要的
12、各种微操作控制信号,并经过控制总线CB送往有关部件,从而使计算机完成相应的操作。,1.2.2 微处理器,3内部寄存器 1) 程序计数器PC(Program Counter) 程序计数器有时也被称为指令指针(IP,Instruction Pointer),它被用来存放下一条要执行指令所在存储单元的地址。 2) 地址寄存器AR(Address Register) 地址寄存器用来存放正要取出的指令的地址或操作数的地址。 3) 数据缓冲寄存器DR(Data Register) 数据缓冲寄存器用来暂时存放指令或数据。,1.2.2 微处理器,4) 累加器A(Accumulator) 累加器是使用最频繁的一
13、个寄存器。在执行算术逻辑运算时,它用来存放一个操作数,而运算结果通常又放回累加器,其中原有信息随即被破坏。因此,顾名思义,累加器是用来暂时存放ALU运算结果的。 5) 标志寄存器FLAGS(Flag Register) 标志寄存器有时也称为程序状态字(PSW,Program Status Word)。它用来存放执行算术运算指令、逻辑运算指令或测试指令后建立的各种状态码内容以及对CPU操作进行控制的控制信息。,1.2.2 微处理器,6) 寄存器阵列RA(Register Array) 寄存器阵列实际上相当于微处理器内部的RAM。微处理器内部有了这些寄存器后,就可避免频繁访问存储器,缩短指令长度和
14、指令执行时间,提高机器的运行速度,方便程序设计。,1.2.2 微处理器,在计算机内部,程序和数据都以二进制形式表示,8位二进制代码作为一个字节。为了便于对存储器进行访问,存储器通常被划分为许多单元,每个存储单元存放一个字节的二进制信息,每个存储单元分别赋予一个编号,称为地址。如图1.4所示,地址为4005H的存储单元中存放了一个8位二进制信息00111000B。,1.2.3 存储器,图1.4 内存单元的地址和内容,1.2.3 存储器,自学内容,1.微型计算机软件系统 2.微型计算机的工作过程 (取指令的操作过程和执行指令的操作过程),实验软件,1.3 微型计算机的应用,计算机应用通常分成如下各
15、个领域 科学计算,数据处理,实时控制 计算机辅助设计,人工智能, 由于微型计算机具有如下特点 体积小、价格低 工作可靠、使用方便、通用性强 所以,可以分为两个主要应用方向,用于数值计算、数据处理及信息管理方向 通用微机,例如:PC微机 用于过程控制及智能化仪器仪表方向 专用微机,例如:工控机、单片机,1.4 计算机有何应用?,计算机现在已远远超过了诞生时用于数值计算的目的,现在被广泛用于航天、国防、工农业生产的各个领域。,1、计算机在航天领域的应用,这是我国发射的神州五号载人飞船,首次实现了中国人飞天的梦想。无论是长征运载火箭还是神州飞船都是在计算机的精密控制下完成这一壮举的。,美国“勇气号”
16、火星车,美国航天飞机,通过计算机远程遥控首次实现了人类对火星的探测,2005年美国宇航局进行的彗星深度撞击,神州六号载人飞船内部计算机控制通讯仪表,2、计算机控制在现代工业 生产中的应用,这是由计算机控制的全自动生产线,这是由计算机控制的无缝钢管生产线,这是一个全自动三合一洗灌封生产线,这是由计算机控制的矿泉水生产线,这是由计算机控制的焊接机器人,这是由计算机控制的数控机床,这是由计算机控制的SMT自动贴片机,3、计算机在军事中的应用,采用计算机控制的“战斧”巡航导弹射程2000公里,巡航高度,海上为7-15米,陆上平坦地区为60米以下,山地150米,有很强的低空突防能力。美国在1991年海湾
17、战争中首次使用“战斧”巡航导弹,此后又在多次战争中使用。,美国战斧巡航导弹,中国的“红鸟”巡航导弹,中国的“东风”战略导弹,中国的“巨浪”潜射导弹,4、计算机在农业中的应用,计算机控制的农业喷灌系统,计算机控制的高尔夫球场灌溉系统,计算机在金融、商业上的应用,计算机控制的证券交易大厅,1.4 如何学好微机原理与接口技术这门课?,如何学好微机原理与接口技术这门课? 学会两个转变: 1、“1+1=10” 从“十进制”到“二进制”的转变,因为计算机内部无论是指令还是数据都是用二进制表示的 2、“1+1=1” 从一般运算向布尔代数运算转变,计算机内部的所有加、减、乘、除运算最终都是用布尔代数运算完成的
18、。,第一章结束,第2章,计算机中的数制和编码,熟悉数制的基本概念和计算机中常用进位计数制 掌握二、八、十、十六进制的表达和相互转换 掌握带符号数的表达和运算:原码、反码、补码 掌握美国信息交换标准代码(ASCII码)和二十进制编码BCD码的表达及应用。 了解微型计算机常用的汉字编码及其应用,本章教学目的及要求,2.1 常用术语,位(bit):位是计算机所能表示的最小最基本的数据单元。在计算机中,它有两种状态:0和1。 字(word)和字长:字是计算机内部进行数据处理的基本单位。 计算机的每个字包含的二进制位的数目称为字长。不同类型的计算机有不同的字长,如,8080是8位,80386是32位 字
19、节(Byte):相邻的8位二进制数称为一个字节目前,通常一个字节定为8位,一个字定为16位,一个双字定为32位,存储容量的表达 比特b(二进制1位) 字节B (二进制8位) 1KB210B1024B 1MB220B、1GB230B 1TB 240B 进制的表示 二进制数用B或b结尾 十进制数可不用结尾字母, 也可用D或d结尾 十六进制数用H或h结尾,请 大 家 复 习 掌 握 本 小 节 内 容,2.1 常用术语,2.2 计算机中的数制及其转换(无符号数),通常,计算机中的数据分为两类: (1)数:用来直接表示量的多少,有大小之分,能够进行 加减等运算。 (2)码:通常指代码或编码,在计算机中
20、用来描述某种信息。 一、数制的基本概念 1数的表示:任何一种数制表示的数都可以写成按位权展 开的多项式之和。 Ndn1bn1dn2bn2dn3bn3dmbm 式中:n整数的总位数。 m小数的总位数。 di表示该位的数码。b表示进位制的基数。 b j表示该位的位权。,2计算机中常用的进位计数制 计数制 基数 数码 进位关系 二进制 2 0、1 逢二进一 八进制 8 07 逢八进一 十进制 10 09 逢十进一 十六进制 16 09、AF 逢十六进一 3计数制的书写规则 (1)在数字后面加写相应的英文字母作为标识。 如:二进制数100B,十六进制数100H (2)在括号外面加数字下标。 如:(10
21、11)2 1011B,(2DF2)16 2DF2H,2.2 计算机中的数制及其转换(无符号数),二、 数制之间的转换 (1)十进制整数转换为二进制整数 采用基数2连续去除该十进制整数,直至商等于“0”为止,然后逆序排列余数。“除2取余” (2)十进制小数转化为二进制小数 连续用基数2去乘以该十进制小数,直至乘积的小数部分等于“0”,然后顺序排列每次乘积的整数部分。 “乘2取整”,2.2 计算机中的数制及其转换(无符号数),【例1】将十进制整数(105)10转换为二进制整数,采用“除2倒取余”的方法,过程如下: 2 105 2 52 余数为1 2 26 余数为0 2 13 余数为0 2 6 余数
22、为1 2 3 余数为0 2 1 余数为1 0 余数为1 所以,(105)10(1101001)2,2.2 计算机中的数制及其转换(无符号数),【例2】将十进制小数(0.8125)10转换为二进制小数,采用“乘2顺取整”的方法,过程如下: 0.812521.625 取整数位1 0.62521.25 取整数位1 0.2520.5 取整数位0 0.521.0 取整数位1 所以,(0.8125)10(0.1101)2 如果出现乘积的小数部分一直不为“0”,则可以根据精度的要求截取一定的位数即可。,2.2 计算机中的数制及其转换(无符号数),【例3】将十进制整数(2347)10转换为十六进制整数,采用“
23、除16倒取余”的方法,过程如下: 16 2347 16 146 余数为11(十六进制数为B) 16 9 余数为2 0 余数为9 所以,(2347)10(92B)16,2.2 计算机中的数制及其转换(无符号数),(3)十进制整数转换为八进制整数或十六进制整数 采用 “除8取余”、“除16取余” (4)十进制小数转换为八进制小数或十六进制小数 采用 “乘8取整”、“乘16取整”,【例4】将十进制小数(0.65625)10转换为十六进制小数,采用“乘16顺取整”的方法,过程如下: 0.656251610.5 取整数位10(十六进制A) 0.5168 取整数位8 所以,(0.65625)10(0.A8
24、)16 如果出现乘积的小数部分一直不为“0”,则可以根据精度的要求截取一定的位数即可。,(5)二、八、十六进制数转换为十进制数 用其各位所对应的系数,按“位权展开求和”的方法就可以得到。其基数分别为2、8、16。 (6)二进制数转换为十六进制数:“合四为一” 从小数点开始分别向左或向右,将每4位二进制数分成1组,不足4位的补0,然后将每组用一位十六进制数表示即可。 (7)十六进制数转换为二进制数:“一拆为四” 将每位十六进制数用4位二进制数表示即可。 (8)二进制数转换为八进制数:“合三为一” (9)八进制数转换为二进制数:“一拆为三”,2.2 计算机中的数制及其转换(无符号数),十六进制转换
25、为十进制计算实例,【例5】将十六进制小数(3BD.7A)16转换为十进制数,采用“按权展开”的方法,过程如下: (3BD.7A)16 =3162+11161+13160 +716-1+1016-2 =(957.4765625)10,【例6】 二进制转换为十六进制:合四为一,不够补零 (110 1110. 0101 1)2 =(0110,1110.0101,1000)2=6E.58H 【例7】十六进制转换为二进制:一拆为四,去掉余零 2F.1BH=(10 1111.0001 1011)2,2.2 计算机中的数制及其转换(无符号数),二进制数的运算 1. 二进制数的算术运算: 加、减、乘、除 2.
26、 二进制数的逻辑运算: 与、或、非、异或,2.2 计算机中的数制及其转换(无符号数),2.3.1 机器数和真值(带符号数),机器数和真值: 在计算机内部表示二进制数的方法称为数值编码,把一个数及其符号在机器中的表示加以数值化,称为机器数。机器数所代表的数称为数的真值。 在计算机中,为了区别正数和负数,通常用二进制数的最高位表示数的符号。对于一个字节型二进制数来说,D7位为符号位,D6D0位为数值位。在符号位中,规定用“0”表示正,“1”表示负,而数值位表示该数的数值大小。,1原码 正数的符号位为0,负数的符号位为1,其它位按照一般的方法来表示数的绝对值。用这样的表示方法得到的就是数的原码。 【
27、例5】当机器字长为8位二进制数时: X1011011B X原码01011011B Y-1011011B Y原码11011011B 1原码00000001B 1原码10000001B,2.3.2 机器数的表示方法(带符号数),一个8位二进制原码表示数的范围为-127+127 16位二进制原码表示数的范围为-32767+32767; 一般而言n位二进制原码数的表示范围: -(2n-1-1)2n-1-1 “0”的原码有两种表示法:00000000表示+0,10000000表示-0。,2.3.2 机器数原码表示的范围(带符号数),2反码 对于带符号的数来说,正数的反码与其原码相同, 负数的反码为其原码
28、除符号位以外的各位按位取反。 【例6】当机器字长为8位二进制数时: X1011011B X原码01011011B X反码01011011B Y1011011B Y原码11011011B Y反码10100100B,2.3.2 机器数的表示方法(带符号数),1反码00000001B 1反码11111110B 127反码01111111B 127反码10000000B 负数的反码与负数的原码有很大的区别,反码通常用作求补码过程中的中间形式。 8位二进制反码表示数的范围为-127+127,16位二进制反码表示数的范围为-32767+32767; “0”的反码有两种表示法:00000000表示+0,11
29、111111表示-0。,2.3.2 机器数的表示方法(带符号数),3补码:正数的补码与其原码相同,负数的补码为其反码在最低位加1。 【例7】 (1)X1011011B (2) Y1011011B (1)根据定义有: X原码01011011B X补码01011011B (2) 根据定义有: Y原码11011011B Y反码10100100B Y补码10100101B,2.3.2 机器数的表示方法(带符号数),可以看出,8位二进制补码表示数的范围为-27+27-1=-128+127,16位二进制反码表示数的范围为-215215-1=-32768+32767。 即补码的范围正负是不对称的。 8位二进
30、制数的原码、反码和补码如表2.1所示。,2.3.2 机器数的表示方法(带符号数),表2.1 8位二进制数的原码、反码和补码表,2.3.2 机器数的表示方法(带符号数),补码表示的整数范围是2n-1(2n-11),其中 n为机器字长。 则:8位二进制补码表示的整数范围是128127 16位二进制补码表示的整数范围是3276832767 当运算结果超出这个范围时,就不能正确表示数 了,此时称为溢出。 8位二进制原码表示的整数范围是127127 8位二进制反码表示的整数范围是127127,2.3.2 机器数的表示方法(带符号数),补码计算规则: 正数补码的真值等于补码的本身;负数补码转换为其真值时,
31、将负数补码按位求反,末位加1,即可得到该负数补码对应的真值的绝对值。 【例8】X补码01011001B,X补码11011001B,分别求其真值X。 (1)X补码代表的数是正数,其真值: X1011001B(126124123120) (641681) (89)D,2.3.3 真值和机器数之间的转换(带符号数),(2)X补码代表的数是负数,则真值: X(1011001求反1)B (01001101)B (0100111)B (125122121120) (32421) (39)D,2.3.3 真值和机器数之间的转换(带符号数),1. 补码加法 在计算机中,凡是带符号数一律用补码表示,运算结果自然
32、也是补码。其运算特点是:符号位和数值位一起参加运算,并且自动获得结果(包括符号位与数值位)。 补码加法的运算规则为: 即:两数补码的和等于两数和的补码。,2.3.4 补码的加减运算,【例9】已知 +51补=0011 0011B, +66补=0100 0010B, -51补=1100 1101B, -66补=1011 1110B 求 +66补+51补=? +66补+-51补=? -66补+-51补=?,2.3.4 补码的加减运算,由于 +66补+51补=(+66)+(+55)补=01110101B结果为正, 因此 (+66)+(+55)原=(+66)+(+55)补=01110101B 其真值为+
33、117,计算结果正确。,2.3.4 补码的加减运算,由于 +66补+51补=(+66)+(55)补=0000111B 结果为正, 因此 (+66)+(55)原=(+66)+(55)补=00001111 其真值为+15,计算结果正确。,2.3.4 补码的加减运算,由于 66补+51补=10001011B=(66)+(55)补 结果为负,因此 (66)+(55)原=(66)+(55)补补=11110101B 其真值为117,计算结果正确。 可以看出,不论正数还是负数,只要直接用它们的补码直接相加,当结果不超出补码所表示的范围时,计算结果便是正确的补码形式。但当计算结果超出补码表示范围时,结果就不正
34、确了,这种情况称为溢出。,2.3.4 补码的加减运算,2. 补码减法 补码减法的运算规则为:,请同学们将例9中的加法变为减法运用规则重新计算!,2.3.4 补码的加减运算,计算机中带符号数用补码表示时有如下优点: 可以将减法运算变为加法运算,因此可使用同一个运算器实现加法和减法运算,简化了电路。 无符号数和带符号数的加法运算可以用同一个加法器实现,结果都是正确的。例如:,2.3.4 补码的加减运算,1. 进位与溢出 所谓进位,是指运算结果的最高位向更高位的进位,用来判断无符号数运算结果是否超出了计算机所能表示的最大无符号数的范围。 溢出是指带符号数的补码运算溢出,用来判断带符号数补码运算结果是
35、否超出了补码所能表示的范围。如果运算结果超出此范围,就叫补码溢出,简称溢出。,2.3.5 进位与溢出,2. 溢出的判断方法 单符号位法。该方法通过符号位和数值部分最高位的进位状态来判断结果是否溢出。,(1)当次高位向最高位有进位且最高位向前也有进位或者次高位向最高位没有进位且最高位向前也没有进位时,结果没有溢出;即最高位与次高位进位状态相同时没溢出。 (2)当次高位向最高位有进位而最高位向前没有进位或者次高位向最高位没有进位而最高位向前有进位时,结果溢出。即即最高位与次高位进位状态不同时结果溢出。,2.3.5 进位与溢出,【例10】 x=01000100B,y=01001000B,计算x+y,
36、试问: 若为无符号数,计算结果是否正确? 若为带符号补码数,计算结果是否溢出?, 若为无符号数,由于CF=0,计算结果正确。 若为带符号数补码,由于结果溢出因此结果是错误的。,2.3.5 进位与溢出,一、 美国信息交换标准代码(ASCII码) ASCII(American Standard Code for Information Interchange)码是美国信息交换标准代码的简称,用于给西文字符编码;包括英文字母的大小写、数字、专用字符、控制字符等;这种编码由7位二进制数组合而成,可以表示128种字符。包括: 34个控制字符;10个阿拉伯数字;52个英文大小写字母;32个专用符号,2.4
37、 字符编码,二、 二十进制编码BCD码 BCD(Binary-Coded Decimal)码又称为“二十进制编 码”,专门解决用二进制数表示十进数的问题。最常用的 是8421编码,其方法是用4位二进制数表示1位十进制数。 1压缩BCD码:每一位数用4位二进制数来表示,即一个字节表示2位十进制数。如:(10001001)BCD89D。 2非压缩BCD码:每一位数用8位二进制数来表示,即一个字节表示1位十进制数。而且只用每个字节的低4位来表示09,高4位为0。 如:89D(00001000 00001001)BCD,2.4 字符编码,【例11】设x=10010110B,当x分别为无符号数、原码、补
38、码、压缩型BCD码时,试分别计算x所代表的数值大小。 解 :无符号数:真值为 x=150 原码: x原=10010110B 真值为 x= 22 补码: x补=10010110B x原=x补补=11101010B 真值为x= 106 BCD码:xBCD=10010110B 真值为x=96,2.4 字符编码,2.5 二进制全加器设计,在进行多位二进制全加器之前,我们现分析一位全加器的设计方法,搞清一位全加器的设计后,再由它组合设计出任意位的多位全加器。 计算机内部所有运算电路都是用布尔逻辑代数设计的,因此,在进行一位全加器设计之前,要写出一位全加器的逻辑真值表。全加的含义:指除了进行一位加法的两位
39、二进制数Ai,Bi外,还包含了一位进位Ci。,2.2.4 基本的二进制加法/减法器,首先我们来讨论最简单的一位全加器的结构,设定两个二进制数字Ai,Bi和一个进位输入Ci 相加,产生一个和输出Si ,以及一个进位输出Ci1。 Ai Bi Ci Ci1 Si 下表列出一位全加器进行加法运算的输入输出真值表。,本位和,产生的进位,表2.1 一位全加器真值表,根据表2.1所示的真值表,三个输入端和两个输入端可按如下逻辑方程进行联系: Si AiBiCi Ci1 AiBiBiCiCiAi 按此表达式组成的一位全加器下图示所示。,FA,Ci+1,Si,Ai,Bi,Ci,N位全加器,当M=0时,B直接送到每位全加器,做加法运算;当M=1时,B取反送到全加器,且在末尾加1,相当取补运算,此时做减法运算。,由上图看到,n个1位的全加器(FA)可级联成一个n位的串行进位加减器。M为方式控制输入线,当M0时,作加法(AB)运算;当M1时,作减法(AB)运算,在后一种情况下,AB运算转化成A补B补运算,求补过程由B1来实现。因此图中最右边的全加器的起始进位输入端被连接到功能方式线M上,作
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 浙江省2025年广播电视编辑记者、播音员主持人资格考试(广播电视基础知识)模拟试题
- 新闻记者考试(新闻采编实务)试题及答案(鸡西2025年)
- 【广东】2025年高考广东卷政治高考真题文档版
- 2025-2030年血液解毒(灌流灌注)器行业数字营销策略分析研究报告
- 2025-2030年塔类设备企业数字化转型与智慧升级战略分析研究报告
- Challenging Yourself B说课稿2025学年高中英语重庆大学版2019必修第三册-重大版2019
- 2026年汽车维修常用工具使用题
- Lesson 126 Have to and do not need to说课稿-2025-2026学年初中英语第一册 下半册新概念英语
- 2026年人工智能应用专业知识
- 2026年英语听力设计教学重难点
- 2026年重庆烟草招聘考试试题及答案
- 2026年城管协管员业务知识考试题库及答案
- 2026年哈三中高三下学期三模语文试卷及答案
- 2026年设备出售转让合同(1篇)
- 2026年事业单位面试结构化100例
- 肠造口患者的心理支持与调适
- 河南省2026年普通高等学校对口招收中等职业学校毕业生考试机电与制造类基础课试卷
- 2025年广东省深圳市初二学业水平地生会考试题题库(答案+解析)
- 河南省农村中小学闲置校园校舍的调查与再生路径研究
- 河北石家庄文旅投建设集团有限公司招聘笔试题库2025
- 园林绿化施工讲解(ppt)课件
评论
0/150
提交评论