文章分类

当前位置:首页>技术文章>数字及常用逻辑电路

数字及常用逻辑电路

数字:谈到数字,有很多同学可能会觉的很可笑,数字?不就是 1234……..这些吗?是的,在日常的生活当中,我们用的一般都是十进制,但在计算机中,它只能识别二进制数,所以在这里我还得跟大家共同分析一下:

1、十进制: 十进制就是基数为“十”,所使用的数码为 0~9 共 10 个数字。逢十进一。是我们每天都会运用到的,在这里就不多谈了。

2、二进制: 二进制的基数为“二”,其使用的数码只有 0 和 1 两个。在计算机中容易实现,在常用的的实现方式中如:可以用电路的高电平表示 1,低电平表示 0;或者三极管截止时集电极的输出表示 1,导通时集电极输出表示 0。

3、十六进制:由于二进制位数太长,不易记忆和收写,所以人们又提出了十六进制的书写形式。我们在汇编语言中多数用十六进制。二进制编码二进制编码在计算机中,是采用二进制数。因而,要在计算机中表示的数、字母、符号等都要以特定的二进制码来表示,这就是二进制编码。一、二进制编码的十进制数:BCD 码(Binary-Coded Decimal)字母与字符的编码字母和各种字符($、#……)也必须按特定的规则用二进制编码才能在机中表示。

普通的是采用 ASCII( American Standard Code for Information Interchange)码。0~9 的 ASCII 码为 30H~39H,大写字母 A~Z 的 ASCII 码为 41H~5AH。 二进制数的运算算术运算:加、减、乘、除逻辑运算:与、或、异或、异一、二进制加法规则为:

(1)0+0=0(2)1+0=0+1=1(3)1+1=0,进位 1(4)1+1+1=1,进位 1 如: 1 1 0 11 0 1 1--------------------1 1 0 0 0 二进制减法规则为:

(1)0-0=0(2)1-1=0(3)1-0=1(4)0-1=1,有借位如:1 1 0 0 0 1 0 0- 0 0 1 0 0 1 0 1--------------------------------1 0 0 1 1 1 1 1 二进制乘法规则为:

(1)0×0=0(2)0×1=0(3)1×0=0(4)1×1=1 如: 1 1 1 1× 1 1 0 1------------------1 1 1 10 0 0 01 1 1 11 1 1 1-------------------------1 1 0 0 0 0 1 1 二进制除法:除法是乘法的逆运算 0 0 0 1 1 1----------------------1 0

1)1 0 0 0 1 11 0 1-------------0 1 1 11 0 1----------------1 0 11 0 1---------0 二进制逻辑运算逻辑"与"的规则: 0 与 0=00 与 1=01 与 1=1 逻辑"或"的规则: 1 或 0=11 或 1=10 或 0=0 逻辑"异或"的规则:0 异或 0=10 异或 1=11 异或 1=0 逻辑"异"的规则: 0 的异为 11 的异为 0 带符号数的表示法一、机器数与真值通常用最高位作为符号位,若字长为 8 位即 D7 为符号位,D6~D0 为数字位,符号位用 0 表示正,用 1 表示负如 X=(01011011)B=+91X=(11011011)B=-91 二、原码按上所述,正数的符号位用"0"表示,负数的符号位用"1"表示,这种表示法就称为原码。

X=+105 [X]原=01101001X=-105 [X]原=11101001 三、反码正数的反码表示与原码相同,最高位为符号位,用"0"表示正,其余位为数值位。(+4)10=0 0 0 0 0 1 0 0 符号二进制数值(+31)10=0 0 0 1 1 1 1 1(+127)10=0 1 1 1 1 1 1 1 而负数的反码表示为它的正数的按位取反(连符号位)而形成的。(+4)10=0 0 0 0 0 1 0 0(-4)10=1 1 1 1 1 0 1 1 ----反码表示(+31)10=0 0 0 1 1 1 1 1(-31)10=1 1 1 0 0 0 0 0 ----反码表示(+127)10=0 1 1 1 1 1 1 1(-127)10=1 0 0 0 0 0 0 0 ----反码表示(+0)=0 0 0 0 0 0 0 0(-0)=1 1 1 1 1 1 1 1 ----反码表示四、补码正数的补码表示与原码相同,即最高位为符号位,用"0"表示正,其余位为数值位。

如【+4】补=【+4】原=【+4】反=0 0 0 0 0 1 0 0【+127】补=【+127】原=【+127】反=0 1 1 1 1 1 1 1 负数的补码表示为它的反码,并在其最后位(即最低位)加 1 形成。如 【+4】原=0 0 0 0 0 1 0 0【-4】反=1 1 1 1 1 0 1 1 是+4 各位取反【-4】补=1 1 1 1 1 1 0 0 反码+1【+31】原=0 0 0 1 1 1 1 1【-31】反=1 1 1 0 0 0 0 0【-31】补=1 1 1 0 0 0 0 1【+0】原=0 0 0 0 0 0 0 0【-0】反=1 1 1 1 1 1 1 1【-0】补=0 0 0 0 0 0 0 08 位带符号数的补码特点:

(1)【+0】补=【-0】补=0 0 0 0 0 0 0 0(2)8 位二进制补码所能表示的数值为+127~-128(3)一个用补码表示的二进制数,最高位为符号位。当符号位为"0"(即正数)时,其余七位即为此数的二进制值;当符号位为"1"(即负数)时,其余几位不是此数的二进制值,把它们按位取反,且在最低位加 1,才是它的二进制值。如:【X】补=1 0 0 1 0 1 0 0 是负数,它的数值为 0 0 1 0 1 0 0 按位取反, 得 1 1 0 1 0 1 1,然后再加 1 为 1 1 0 1 1 0 0=(108)10 当负数采用补码表示时,就可以把减法转换为加法。

例如: 64-10=64+(-10)=64+【-10】补+64=0 1 0 0 0 0 0 010=0 0 0 0 1 0 1 0【-10】补=1 1 1 1 0 1 1 0 减法运算:64 0 1 0 0 0 0 0 0-10 - 0 0 0 0 1 0 1 0-------------- ----- ------------------------------------->--------------------------------------------------------------54 0 0 1 1 0 1 1 0 补码加法:64 0 1 0 0 0 0 0 0+【-10】补 ------> (+) 1 1 1 1 0 1 1 0-------------- ----- ------------------------------------->--------------------------------------------------------------1 0 0 1 1 0 1 1 0 此 1 自然丢失。

在 8 位字长的单字节运算中第 7 位的进位,自然丢失。例:34-68=34+【-68】补【34】补=0 0 1 0 0 0 1 0【+68】补=0 1 0 0 0 1 0 0【-68】补=1 0 1 1 1 1 0 034 0 0 1 0 0 0 1 0+(-68) + 1 0 1 1 1 1 0 0-------------- ----- ------------------------------------->--------------------------------------------------------------- 34 1 1 0 1 1 1 1 0 符号位为 1,肯定结果为负,其数值部分为 0 1 0 0 0 1 0=34 所以结果是-34 在微型机中,凡是带符号数一律是用补码表示的,所以,其运算结果也是补码。

当字长为 8 位时,其范围为+127~-128。当运算结果超出这个表达范围时,结果就不正确了,这就称为溢出。这时要用多字节来表示。数字之间的互换:在本节课中,理论上的二、十、十六的转换方式我就不多论述,有兴趣的同学可以去参考下这方面的书籍,在下面我为大家讲解一下计算机中科学型计算器的数字转换方法,在以后的编程中经常会用到的。二进制与十进制、十六进制的转换有专用的计算器。当你看到我编写的这份教材时,相信你也有了一台电脑,这时你可以点击开始然后点击程序再点附件这时我们会看到有一个计算器的程序,我们点击一下计算器,这时一个计算器的操作界面就出来了。

如果你看到的是一个跟我们普通计算器一样的界面,这时你还需要进行一个小小的设定,点击计算器界面上的查看,这时会下拉一个菜单,即标准型,科学型,我们选择科学型,这时一个可进行二、十、十六进制运算的计算器就出来了。学了这么长时间有同学又会说了,东方星老师,你总是跟我们讲这些,我们感觉好累的。同志们,我知道你们累,可是东方星老师更累呀,一字一字为你们编写这份教材,目的就是想你们能从我编写的这份教材中多学点东东,因为我前面所讲的都是至关重要的东西。

好吧,既然有同学说累了,那我们就先休息一下,跟东方星老师用计算器先玩一下十六进制与十进制的转换吧。刚才说到我们已打开了科学型的计算器,这时我们点击十六进制,然后点击计算器上的 00,这时在计算器的显示屏上会显示 00。记住:我们刚才输入的是十六进制,我们怎样把他转为十进制呢?这时我们选中十进制,这时显示屏上显示什么?还是 0 吧。哈哈,当然了,0 用十六进制、十进制表示都是 0 啦。好,我们又把计算器设回到十六进制,然后输入 7F,再点击十进制,这时显示什么。

127,对吧。我们回想一下,我们前面说到的,00~7FH 其实用十进制表示,是不是就是 0~127,也就是我们所说的低 128 单元?你们再把 80H~FFH 转换一下,结果就不用我说了吧。常用逻辑电路在逻辑电路中,输入和输出只有两种状态,即高电平和低电平。通常以逻辑“1”和“0”表示电平高低。

1、 与门是一个能够实现逻辑乘运算的、多端输入、单端输出的逻辑电路。 逻辑解释: 即如右边图所示,当开关 A 与 B 当中只有全部闭合(即为高电平 1)时,才会有输出(即灯泡才会亮)所以在与门电路中,只有输入的全部条件为高电平“1”时输会有输出。语言表达为:“有 0 出 0,全 1 出 1”2、 或门是一个能够实现逻辑加运算的、多端输入、单端输出的逻辑电路。 逻辑解释:即如右边图所示,当开关 A 与 B 当中只要有一个开关闭合(即为高电平 1)时,就会有输出(即灯泡才会亮)所以在或门电路中,只要输入的为高电平“1”就会有输出。 语言表达为:“有 1 出 1,全 0 出 0”。

3、 非门是一个能够实现逻辑非运算的、单端输入、单端输出的逻辑电路。非就是反,就是否定,也就是输入与输出的状态总是相反。


© 星光电子技术工作室 2021 All Rights Reserved.
如有任何问题、建议、业务、合作,请联系手机/微信:13713820066