数字电路能完成的算术功能有加法、减法、乘法和除法等。这与模拟电路中的比例运算、求和运算以及模拟乘法器等是不一样的概念。模拟电路的运算完成的是对信号幅值的一种叠加.而数字电路的算术功能完成的是纯数字的运算,这些数字必须以二进制数来表示,每个二进制数的一个位占用一根导线,导线为高电平表示这个位上的数为1.导线为低电平表示这个位上的数为0。
简介
数字电路能完成的算术功能有加法、减法、乘法和除法等。这与模拟电路中的比例运算、求和运算以及模拟乘法器等是不一样的概念。
1 加法
加法(Addition)功能是通过加法器逻辑电路来完成的。一个二进制加法器能够实现两个二进制数(输入端有A、B和进位输入C-in)相加,并产生一个和(∑,二进制数代码)及一个输出进位(C-out),下面举例说明了二进制加法器是如何实现3+9的加法运算的。显而易见,和是12(∑为二进制码1100),输出进位C-out为0,但前提是假设输人端进位C in为0。输入端的C。只有在多级加法器串联时才有实际意义。如果是BCD(用二进制表示的十进制数)码加法器,和12中的个位2从∑输出(BCD码0010),十位1从输出进位端C-out输出。

2.减法
减法(Subtraction)也是由数字电路来完成的。一个减法器需要被减数、减数和借位输入三个输入。两个输出分别是差和借位输出。例如,当8减去5时,输入端的借位输入为0,差是3且没有借位输出。借位输入同样也只有在多个减法器级连时才有意义。
3.乘法
乘法(Multiplication)是由被称作乘法器的数字电路来完成的。在同一时间,数总是被2乘.因此需要两个输入。乘法器的输出是积。乘法器的乘法运算主要是通过移位和加法电路来实现的。被乘数(二进制数)不断地向左移位来实现连续乘2,变成积的一部分,再通过与某数相加来完成最终的积。
4.除法
除法(Division)是通过一系列相减、比较和移位来完成的,因此也可以用加法器和其它电路来实现。两个输入分别是被除数和除数,两个输出分别是商和余数。
5.码制转换功能
码制转换功能(Code Conversion Function)一种码制是指一串二进制位按照特定的格式来安排并用来表示指定的信息。一个码制转换器能够把一种形式的代码信息转换成另外一种形式,例如把二进制转换成BCD码(Binary Coded Decimal)或格雷码(Oray Code)。后面章节会详细讲到不同的码制的编码方
式、用途以及相关的码制转换器。
6.编码功能
编码功能(Encoding Function)由被称为编码器的逻辑电路来完成。编码器能够把信息转换成代码,如把一个十进制数或阿尔法字符转变成某种码制形式。例如,有种编码器能够把0~9这十个十进制数分别转换成对应的二进制代码。当编码器输入端输入一个且唯一一个高电平时,输出端就会有对应的一组二进制位编码,这个编码就意味着输入端高电平有效时所示的含义。这种对应关系是由用户来定义的,不过一般通用编码器会有约定俗成的含义。
下图是一个计算器键盘上的数字和字符被转换成二进制代码的编码器说明图。通过按压每个键盘,分别产生对应的高电平输入.从而在输出编码端产生对应的二进制代码。

7.译码功能
泽码功能(Decoding Function)由被称为译码器的逻辑电路来完成。译码器能够把代码转换成对应的某种信息,如把一个二进制数转换成非码制形式,如十进制数。例如,有种译码器能够把四位二进制代码转换成对应的十进制数。下图是一个驱动七段数码管显示的特定译码器的功能说明图,数码管的每一段都连接到显示译码器的一根输出线上。当一个给定的二进制编码出现在译码器的输人端时,译码器七个输出端中对应的高电平被激活,驱动七段数码管中相应的段点亮,从而显示出相应于译码器输入端代码值的数字。

8.数据选择功能
在数据选择功能(Data Selection Function)中,选择数据的电路有数据选择器(Multiplexer)和数据分配器(Demultiplexer)两种。数据选择器能够从输入端的多路数据中按序选中~路,并从输出端分时输出,这一功能是由电子转换开关来实现的。而数据分配器和数据选择器的功能正好相反,可直接把数据选择器的输入输出端颠倒使用,适当接线即可。
当数据从甲地传到比较远的乙地时,甲地接数据选择器.乙地接数据分配器,两地之间只接一根线,分时传送,节省了电线。比如有一个字节的二进制数要传送,按序分别把8个位输出到数据选择器的输出端上,通过远距离传输至数据分配器上;数据分配器接收到此输入线上的电平值(0或1)后.再按序分配至其多个输出端对应的一根线上,如下图所示。计算机系统之间的数据传输通常就是利用这样的传输方式。

9.存储功能
数字系统优于模拟系统的最大特点就是它的存储功能(Storage Function),即它可以在一定时问内把二进制数和位保存在存储器中,这种存储数据的单元是数字电路而不是磁介质。普通存储器件包括锁存器、触发器、寄存器、半导体存储器以及磁盘和光盘等,后两种不属于数字电路。
1)锁存器和触发器
锁存器和触发器很相似,都有一个输出,多个输入,能够把输入端想要设置的电平值保存在输出端,并且在输入电平改变时仍能保持输出不变;只有在特定的输入条件下输出才改变(1变0或0变1)。它能记忆一个位,是时序逻辑电路(具有记忆的电路)的最基本单元。
2)寄存器
寄存器是由多个触发器组成的,因此寄存器能够同时记忆多个位,如一个字节的二进制数。只有当输入条件改变时,输出端的二进制数才改变。后面会学到移位寄存器、串/并行转换寄存器等。寄存器储存数据的时间是暂时性的,且容量有限,因此算不上是存储器。1
10.计数功能
在数字系统中,计数功能(Counting Function)非常重要。数字计数器有很多种,它们的基本目的是记忆输入端的数字脉冲个数,这个数字脉冲波代表一定的含义。每输入一个脉冲,计数器都会把它的当前个数转换成对应的编码值来表示。所以计数器必须有记忆功能,能记住输入脉冲的数量及当前脉冲的序号。除了最基本的记忆功能。其存储能力也比较重要。计数器电路主要由触发器构成。
下图是一个五进制计数器的说明。计数器输入端是一个周期为1秒的方波,输出为三位二进制代码,计数瞬间为方波的上升沿到来时。上电初始,没有脉冲输入时,输出为000,当第一个脉冲的上升沿到来时,输出OOl;依次类推,当第四个脉冲的上升沿到来时,输出为100;当第五个脉冲的上升沿到来时,输出为000,回到初始状态。到下一个循环,第一个脉冲的上升沿到来时,重新输出001,循环计数,自动清零。

定义
算术功能是将累加器l和累加器2中的两个数进行加、减、乘和除的基本运算,运算结果存放在累加器1中。状态位CCO、CCI、0V和os提供运算结果信息和计算进度。
本词条内容贡献者为:
王沛 - 副教授、副研究员 - 中国科学院工程热物理研究所
科普中国公众号
科普中国微博

帮助