二进制算术运算和逻辑运算
二进制数二进制计算
关系运算
逻辑运算
上海市七宝中学
P8 二进制数的运算(算术、关系、逻辑)
算术运算 关系运算 逻辑运算
对T(True/真/1)和 F(False/假/ 0)进行运算 运算类型:与(AND)、或(OR)、非(NOT) 运算规则:NOT、AND、OR;自左向右、括号内优先
A 0 0 1 1 B 0 1 0 1 A and B 0 0 0 1 A or B 0 1 1 1
A. 8 B. 7 C. 6 D. 9
解法一:
∵ 6位二进制数最多可以表示
26= 64种类别 7位二进制数最多可以表示
解法二 ∵ 95=1011111B 需要7位二进制
27=
∴
128种类别
128(27)>
96 >
64(26)
∴
需要7位二进制(7bit)
上海市七宝中学
P8 二进制数的运算
算术运算
包括加、减、乘、除,加法是基础 二进制加法规则:逢二进一 如:10011+11100 = 101111 包括大于、等于、小于、大于等于、 小于等于、不等于 运算结果是逻辑值: 0(F/false/假)或 1(T/true/真) 如:4<8= True
上海市七宝中学
={0000,0001,0010,0011,…,1110,1111}
重要规律
一个n位二进制数, 最小为: 00…000B 最大为: 11…111B 可以表示从 0 到 2n-1共 2n 个 不同的数量
上海市七宝中学
试一试
HS编码即海关编码,是编码协调制度的简称。HS编码涵盖了《海关合作理 事会税则商品分类目录》(CCCN)和联合国的《国际贸易标准分类》 (SITC)两大分类编码体系,是系统的、多用途的国际贸易商品分类体系。 根据HS编码,商品综合分类表目录分为“植物产品”、“有机化学品”等 96类。如果用二进制数表示不同的类别,至少需要______位。
2.2 二进制数的算术运算
1
数字逻辑设计及应用 ( Digital Logic Design and Applications )
2.2.1 二进制加法运算
(Binary Addition )
•进位输入(Carry in): C in • 进位输出 (Carry out) C out • 本位和 (Sum): S
谢谢!
1011 1110 + 1000 1101
2
数字逻辑设计及应用 ( Digital Logic Design and Applications )
表2-2-1 一位二进制加法真值表
输入
输出
被加数X 加数Y 输入进位Cin
0
0
0
0
0
1
0
1
0
0
1
1
1
0
0
1
0
1
1
1
0
3
1
1
1
和S 进位输出Cout
0
0
1
0
1
0
0
1
1
0
0
1
0
1
1
1
数字逻辑设计及应用 ( Digital Logic Design and Applications )
2.2.2 二进制减法运算
(Binary Subtraction )
• 借位输入 (Borrow in): Bin • 借位输出 (Borrow out): Bout • 本位差 (Difference bit): D
1010 1010 – 0101 0101
4
数字逻辑设计及应用 ( Digital Logic Design and Applications )
二进制运算法则
二进制运算法则莱布尼兹也是第一个认识到二进制记数法重要性的人,并系统地提出了二进制数的运算法则。
二进制对200多年后计算机的发展产生了深远的影响。
他于1716年发表了《论中国的哲学》一文,专门讨论八卦与二进制,指出二进制与八卦有共同之处。
目录德国著名的数学家和哲学家莱布尼兹,对帕斯卡的加法机很感兴趣。
于是,莱布尼兹也开始了对计算机的研究。
编辑本段研究过程1672年1月,莱布尼兹搞出了一个木制的机器模型,向英国皇家学会会员们做了演示。
但这个模型只能说明原理,不能正常运行。
此后,为了加快研制计算机的进程,莱布尼兹在巴黎定居4年。
在巴黎,他与一位著名钟表匠奥利韦合作。
他只需对奥利韦作一些简单的说明,实际的制造工作就全部由这位钟表匠独自去完成。
1974年,最后定型的那台机器,就是由奥利韦一人装配而成的。
莱布尼兹的这台乘法机长约1米,宽30厘米,高25厘米。
它由不动的计数器和可动的定位机构两部分组成。
整个机器由一套齿轮系统来传动,它的重要部件是阶梯形轴,便于实现简单的乘除运算。
莱布尼兹设计的样机,先后在巴黎,伦敦展出。
由于他在计算设备上的出色成就,被选为英国皇家学会会员。
1700年,他被选为巴黎科学院院士。
莱布尼兹在法国定居时,同在华的传教士白晋有密切联系。
白晋曾为康熙皇帝讲过数学课,他对中国的易经很感兴趣,曾在1701年寄给莱布尼兹两张易经图,其中一张就是有名的“伏羲六十四卦方位圆图”。
莱布尼兹惊奇地发现,这六十四卦正好与64个二进制数相对应。
莱布尼兹认为中国的八卦是世界上最早的二进制记数法。
为此,莱布尼兹非常向往和崇尚中国的古代文明,他把自己研制的乘法机的复制品赠送给中国皇帝康熙,以表达他对中国的敬意。
编辑本段法则二进制的运算算术运算二进制的加法:0+0=0,0+1=1 ,1+0=1, 1+1=10(向高位进位);即7=11110=1010 3=11二进制的减法:0-0=0,0-1=1(向高位借位) 1-0=1,1-1=0 (模二加运算或异或运算) ;二进制的乘法:0 * 0 = 00 * 1 = 0,1 * 0 = 0,1 * 1 = 1 二进制的除法:0÷0 = 0,0÷1 = 0,1÷0 = 0 (无意义),1÷1 = 1 ;逻辑运算二进制的或运算:遇1得1 二进制的与运算:遇0得0 二进制的非运算:各位取反。
二进制运算法则
1.2 微型计算机运算基础1.2.1 二进制数的运算方法电子计算机具有强大的运算能力,它可以进行两种运算:算术运算和逻辑运算。
1.二进制数的算术运算二进制数的算术运算包括:加、减、乘、除四则运算,下面分别予以介绍。
(1)二进制数的加法根据“逢二进一”规则,二进制数加法的法则为:0+0=00+1=1+0=11+1=0 (进位为1)1+1+1=1 (进位为1)例如:1110和1011相加过程如下:(2)二进制数的减法根据“借一有二”的规则,二进制数减法的法则为:0-0=01-1=01-0=10-1=1 (借位为1)例如:1101减去1011的过程如下:(3)二进制数的乘法二进制数乘法过程可仿照十进制数乘法进行。
但由于二进制数只有0或1两种可能的乘数位,导致二进制乘法更为简单。
二进制数乘法的法则为:0×0=00×1=1×0=01×1=1例如:1001和1010相乘的过程如下:由低位到高位,用乘数的每一位去乘被乘数,若乘数的某一位为1,则该次部分积为被乘数;若乘数的某一位为0,则该次部分积为0。
某次部分积的最低位必须和本位乘数对齐,所有部分积相加的结果则为相乘得到的乘积。
(4)二进制数的除法二进制数除法与十进制数除法很类似。
可先从被除数的最高位开始,将被除数(或中间余数)与除数相比较,若被除数(或中间余数)大于除数,则用被除数(或中间余数)减去除数,商为1,并得相减之后的中间余数,否则商为0。
再将被除数的下一位移下补充到中间余数的末位,重复以上过程,就可得到所要求的各位商数和最终的余数。
例如:100110÷110的过程如下:所以,100110÷110=110余10。
2.二进制数的逻辑运算二进制数的逻辑运算包括逻辑加法(“或”运算)、逻辑乘法(“与”运算)、逻辑否定(“非”运算)和逻辑“异或”运算。
(1)逻辑“或”运算又称为逻辑加,可用符号“+”或“∨”来表示。
二、算术逻辑运算指令
二、算术运算指令
• • • • • • • •
MOV ADD DA MOV MOV ADDC DA MOV
A,50H A,60H A 40H,A A,51H A,61H A 41H,A
;(A)←(50H) ;(A)←(A)+(60H) ;BCD码修正
二、算术运算指令 ⑷加1指令
• • • • • INC INC INC INC INC A Rn direct @Ri DPTR ;(A)←(A)+1 ;(Rn)←(Rn)+1 ;(direct)←(direct)+1 ;((Ri))←((Ri))+1 ;(DPTR)←(DPTR)+1
• 功能是将累加器A内容减去源地址单元内容,再减去 进位位Cy的内容,结果放入累加器A中 • 问题:如何应用此指令对两个单字节数相减?
二、算术运算指令
•主要用于多字节数的减法 如果要进行单字节或多字节数低8位数的减法运算,应先 清除进位位Cy。 • 对于PSW的影响CY、AC、OV、P • 例3-15:设累加器A的内容为0C9H,寄存器R2内容为 54H,进位标志Cy=1,执行指令:SUBB A,R2
二、算术运算指令
⑵减1 指令 • • • • DEC DEC DEC DEC A ;(A)←(A)-1 Rn ;(Rn)←(Rn)-1 direct ;(direct)←(diect)-1 @Ri ;((Ri))←((Ri))-1
• 注:执行结果只影响PSW的奇偶校验位P (以A为操 作数时 )
二、算术运算指令
二、算术运算指令
• (3) 二-十进制调正指令(BCD码修正指令) DA A ; • 若[(A3~0)>9]或[(AC)=1] 则(A3~0)←(A3~0)+06H; 若[(A7~4)>9]或[(Cy)=1] 则(A7~4)←(A7~4)+60H 注: • 本指令不能单独使用,只能用在加法指令之后 • 本指令不能直接用于十进制数减法的调正 • 本指令不能简单的把累加器A中的16进制数变换成 BCD码
二进制数的逻辑运算(绝密)
二进制数的逻辑运算在计算机中,除了能表示正负、大小的“数量数”以及相应的加、减、乘、除等基本算术运算外,还能表示事物逻辑判断,即“真”、“假”、“是”、“非”等“逻辑数”的运算。
能表示这种数的变量称为逻辑变量。
在逻辑运算中,都是用“1”或“0”来表示“真”或“假”,由此可见,逻辑运算是以二进制数为基础的。
计算机的逻辑运算区别于算术运算的主要特点是:逻辑运算是按位进行的,位与位之间不像加减运算那么有进位或借位的关系。
逻辑运算主要包括的运算有:逻辑加法(又称“或”运算)、逻辑乘法(又称“与”运算)和逻辑“非”运算。
此外,还有“异或”运算。
(1)逻辑与运算(乘法运算)逻辑与运算常用符号“×”、“∧”或“&”来表示。
如果A、B、C为逻辑变量,则A和B的逻辑与可表示成A×B=C、A∧B=C或A&B=C,读作“A与B等于C”。
一位二进制数的逻辑与运算规则如表1-2所示。
表1-2 与运算规则[table=548][tr][td=1,1,187]A[/td][td=1,1,177]B[/td][td=1,1,184]A∧B(C)[/td][/tr][tr][td=1,1,187]0[/td][td=1,1,177]0[/td][td=1,1,184]0[/td][/tr][tr][td=1,1,187]0[/td][td=1,1,177]1[/td][td=1,1,184]0[/td][/tr][tr][td=1,1,187]1[/td][td=1,1,177]0[/td][td=1,1,184]0[/td][/tr][tr][td=1,1,187]1[/td][td=1,1,177]1[/td][td=1,1,184]1[/td][/tr][/table]由表1-2可知,逻辑与运算表示只有当参与运算的逻辑变量都取值为1时,其逻辑乘积才等于1,即一假必假,两真才真。
这种逻辑与运算在实际生活中有许多应用,例如,计算机的电源要想接通,必须把实验室的电源总闸、USP 电源开关以及计算机机箱的电源开关都接通才行。
二进制算术运算和逻辑运算
⼆进制算术运算和逻辑运算1、⼆进制的算术运算⼆进制数的算术运算⾮常简单,它的基本运算是加法。
在计算机中,引⼊补码表⽰后,加上⼀些控制逻辑,利⽤加法就可以实现⼆进制的减法、乘法和除法运算。
(1)⼆进制的加法运算⼆进制数的加法运算法则只有四条:0+0=0 0+1=1 1+0=1 1+1=10(向⾼位进位)例:计算1101+1011的和由算式可知,两个⼆进制数相加时,每⼀位最多有三个数:本位被加数、加数和来⾃低位的进位数。
按照加法运算法则可得到本位加法的和及向⾼位的进位。
(2)⼆进制数的减法运算⼆进制数的减法运算法则也只有四条:0-0=00-1=1(向⾼位借位)1-0=11-1=0例:计算11000011 00101101的差由算式知,两个⼆进制数相减时,每⼀位最多有三个数:本位被减数、减数和向⾼位的借位数。
按照减法运算法则可得到本位相减的差数和向⾼位的借位。
(3)⼆进制数的乘法运算⼆进制数的乘法运算法则也只有四条:0 * 0 = 00 * 1 = 01 * 0 = 01 * 1 = 1例:计算1110×1101的积由算式可知,两个⼆进制数相乘,若相应位乘数为1,则部份积就是被乘数;若相应位乘数为0,则部份积就是全0。
部份积的个数等于乘数的位数。
以上这种⽤位移累加的⽅法计算两个⼆进制数的乘积,看起来⽐传统乘法琐碎,但它却为计算机所接受。
累加器的功能是执⾏加法运算并保存其结果,它是运算器的严重组成部分。
(4)⼆进制数的除法运算⼆进制数的除法运算法则也只有四条:0÷0=00÷1=01÷0=0(⽆意义)1÷1 = 1例:计算100110÷110的商和余数。
由算式可知,(100110)2÷(110)2得商(110)2,余数(10)2。
但在计算机中实现上述除法过程,⽆法依靠观察判断每⼀步是否“够减”,需进⾏修改,通常采⽤的有“恢复余数法”和“不恢复余数法”,这⾥就不作介绍了。
2逻辑代数入门基础
第2章逻辑代数基础2.1 概述一、算术运算和逻辑运算在数字电路中,二进制数码不仅可以表示数值的大小,而且可以表示事物的状态,当两个二进制数码表示两个数值大小时,它们之间可进行数值运算,即算术运算。
当两个二进制数码表示不同逻辑状态时,它们之间的因果关系可进行逻辑运算。
算术运算与逻辑运算有本质的差别,下面重点介绍逻辑运算的各种规则。
二、几个基本概念1、逻辑状态表示法一种状态高电位有真是美生 1 0另一种状态低电位无假非丑死 0 12、两种逻辑体制1 高电位低电位0 低电位高电位正逻辑负逻辑3、高低电平的规定正逻辑负逻辑2.2 逻辑代数中的三种基本运算1、与逻辑(与运算)(逻辑乘)与逻辑的定义:仅当决定事件(Y)发生的所有条件(A,B,C,…)均满足时,事件(Y)才能发生。
表达式为:Y=ABC开关A,B串联控制灯泡Y2、或逻辑(或运算)或逻辑的定义:当决定事件(Y )发生的各种条件(A ,B ,C ,…)中,只要有一个或多个条件具备,事件(Y )就发生。
表达式为:Y=A+B+C+…开关A ,B 并联控制灯泡YA 、B 都断开,灯不亮。
A 断开、B 接通,灯亮。
A 接通、B 断开,灯亮。
A 、B 都接通,灯亮。
两个开关只要有一个接通,灯就会亮。
逻辑表达式为:Y=A+B功能表3(A )满足时,开关A 控制灯泡YA 断开,灯亮。
A 接通,灯灭。
功 能 表Y=A4((((1、代入定理:任何一个含有变量A A的位置都用同一个逻辑函数代替,则等式仍然成立。
这个规则称为代入定理。
例如,已知等式,用函数Y=AC代替等式中的A,根据代入规则,等式仍然成立,即有:(2)反演定理:对于任何一个逻辑表达式Y,如果将表达式中的所有“·”换成“+”,“+”换成“·”,“0”换成“1”,“1”换成“0”,原变量换成反变量,反变量换成原变量,那么所得到的表达式就是函数Y的反函数Y(或称补函数)。
这个规则称为反演定理。
第四讲 二进制运算及数的表示
要存储符号、指数与尾数三部分。浮点数分为单精度与双精度两种,
单精度浮点数用32位(4字节)存储,双精度浮点数用64位存储。 在计算机中二进制可进行算术运算与逻辑运算,算术运算规则简单, 实现较容易。逻辑运算包括“与”、“或”、“非”与“异或”运算。
计算机基础科学系
Thank you!
Department of Computer Science and Technology
计算机基础科学系
3 .计算机中数的概念
在计算机中表示数需要考虑的三个问题 数的长度
长度固定
符号
最高位(最左端)为数的符号位 符号位: 0表示“+”,1表示“-”
小数点
位置隐含 位置可固定(定点数),也可浮动(浮点数)
计算机基础科学系
4.1 定点数的表示
定点整数
定点小数
小数点的位置约定在数符位和数值部分的最高位之间,用以表示小于1的纯小数。
2.4 二进制异或运算
⑷“异或”运算(XOR) “异或”运算用符号“ ”来表示。其运算规则如 下:0 0 = 0 0 1 = 1 1 0 = 1 1 1 = 0 即当两个参与运算的数取值相异时,运算结果为 1,否则为0。 例二十:分别求10111001 11110011与 100010101 101111100的结果。
2.计算机中是用有限的连续字节保存浮点数的。保存 这些浮点数当然必须有特定的格式,Java 平台上的浮点 数类型 float 和 double 采纳了 IEEE 754 标准中所定义的 单精度 32 位浮点数和双精度 64 位浮点数的格式。
计算机基础科学系
小 结
计算机中的数是利用二进制数来表示,存储数的方法有定点法与浮点 法。定点法通常用来表示整数。浮点法用来表示小数,存储浮点数需
二进制的运算法则
1.2 微型计算机运算基础1.2.1 二进制数的运算方法电子计算机具有强大的运算能力,它可以进行两种运算:算术运算和逻辑运算。
1.二进制数的算术运算二进制数的算术运算包括:加、减、乘、除四则运算,下面分别予以介绍。
(1)二进制数的加法根据“逢二进一”规则,二进制数加法的法则为:0+0=00+1=1+0=11+1=0 (进位为1)1+1+1=1 (进位为1)例如:1110和1011相加过程如下:(2)二进制数的减法根据“借一有二”的规则,二进制数减法的法则为:0-0=01-1=01-0=10-1=1 (借位为1)例如:1101减去1011的过程如下:(3)二进制数的乘法二进制数乘法过程可仿照十进制数乘法进行。
但由于二进制数只有0或1两种可能的乘数位,导致二进制乘法更为简单。
二进制数乘法的法则为:0×0=00×1=1×0=01×1=1例如:1001和1010相乘的过程如下:由低位到高位,用乘数的每一位去乘被乘数,若乘数的某一位为1,则该次部分积为被乘数;若乘数的某一位为0,则该次部分积为0。
某次部分积的最低位必须和本位乘数对齐,所有部分积相加的结果则为相乘得到的乘积。
(4)二进制数的除法二进制数除法与十进制数除法很类似。
可先从被除数的最高位开始,将被除数(或中间余数)与除数相比较,若被除数(或中间余数)大于除数,则用被除数(或中间余数)减去除数,商为1,并得相减之后的中间余数,否则商为0。
再将被除数的下一位移下补充到中间余数的末位,重复以上过程,就可得到所要求的各位商数和最终的余数。
例如:100110÷110的过程如下:所以,100110÷110=110余10。
2.二进制数的逻辑运算二进制数的逻辑运算包括逻辑加法(“或”运算)、逻辑乘法(“与”运算)、逻辑否定(“非”运算)和逻辑“异或”运算。
(1)逻辑“或”运算又称为逻辑加,可用符号“+”或“∨”来表示。
计算机的逻辑与运算
计算机的逻辑与运算计算机作为信息处理的工具,它的核心功能在于进行逻辑判断与运算。
本文将介绍计算机逻辑与运算的基本概念以及相关的操作。
一、逻辑运算逻辑运算是计算机处理信息时的基本操作之一,它用于判断和比较数据的真假、大小等。
计算机中最基本的逻辑运算有与、或、非三种运算。
1. 与运算(AND):当两个条件同时满足时,结果为真;否则,结果为假。
例如,在计算机中,我们可以使用与运算来判断某个数字是否在一个范围内。
如果一个数字同时满足大于等于10且小于等于20的条件,则可以利用与运算判断该数字是否在该范围内。
2. 或运算(OR):只要两个条件中有一个满足,结果为真;否则,结果为假。
举例来说,当我们需要判断一个人是否满足年龄要求时,只需要满足其中一个条件即可。
使用或运算可以简化判断的过程。
3. 非运算(NOT):将真变为假,假变为真。
非运算可以用于取反的操作,例如判断一个数字是否不在某个范围内,可以利用非运算来实现。
二、二进制与逻辑运算的关系在计算机中,数据是以二进制形式进行表示和处理的。
因此,在进行逻辑运算时,计算机需要将数据转换为二进制进行计算。
1. 二进制表示:计算机使用0和1两个数字表示数据。
其中,0表示假,1表示真。
2. 二进制逻辑运算:与、或、非运算在计算机中可以通过位运算实现。
位运算按位对每一位进行运算,可以实现逻辑运算的目的。
例如,对于两个二进制数字1101和1010进行与运算,按位对应进行运算,得到的结果为1000。
这表示只有两个数字在相同的位上都为1时,结果位才为1。
三、进制转换与数值表示除了二进制,计算机还可以处理其他进制的数据。
常见的进制有八进制、十进制和十六进制。
1. 八进制:八进制是以8为基数的表示方法,使用0至7这8个数字进行表示。
在计算机中,八进制通常以0开头表示。
2. 十进制:十进制是我们日常生活中最常用的表示方法,使用0至9这10个数字进行表示。
在计算机中,我们通常使用十进制来表示数值。
二进制运算及数的表示
定点整数
4.1 定点数的表示
定点小数
小数点的位置约定在数符位和数值部分的最高位之间,用以表示小于1的纯小数。
4.2 浮点数的表示
所谓浮点表示法就是把一个数的有效数字和数 的范围在计算机的存储单元中分别予以表示,这种 把数的范围和精度分别表示,而数的小数点位置随 比例因子的不同而在一定范围内自由浮动的表示法。
M(23bit)
双 精 度 :S(1bit) E(11bit)
M(52bit)
4.2 浮点数的表示
一个规格化的浮点数的真值必须表示为:x=S2e×(1.M) 例如不是一个规范的浮点数。为了规范化,我们须把它表 示成+1.0001110101×2+6,这样的一个数就是一个规范化数。
数的指数表示形式:
即当两个参与运算的数取值相异时,运算结果为1,否则为0。
0×0=0 0×1=0
1×0=0
逻辑运算包括“与”、“或”、“非”与“异或”运算。
即当两个参与运算的数取值相异时,运算结果为1,否则为0。
“异或”运算用符号“ ”来表示。
0∨0 = 0 0∨1 = 1 1∨0 = 1 1∨1 = 1。
例二十:分别求10111001 11110011与100010101 101111100的结果。
N数的=指M数表×示R形式C :
阶码C(Characteristic)
尾数M(Mantissa)
进制数的基R
4.2 浮点数的表示
32位浮点数和64位浮点数的标准格式: 在两种浮点数中,S:浮点数的符号位,0 表示正数,1表示负数。M:尾数,用小数表示, E为阶码为整数,小数点放在尾数域的最前面。
单 精 度 :S(1bit) E(8bit)
二进制的逻辑运算
第3页/共10页
二进制的逻辑运算
逻辑“与”运算: 符号: “Λ”; 法则:两个相“与”的逻辑变量中,
只要有一个为0,“与”运算的结果就为0。 仅当两个变量都为1时,“与”运算的结果才为1。
第4页/共10页
二进制的逻辑运算••求X=(000011111111)2 Y=(010101010101)2
Z1=X∧Y;
•
Z2=YX∨Y;
•
Z3= ;
•
Z4=X Y 的值。
第9页/共10页
谢谢您的观看!
第10页/共10页
制,所以我们需要了解二进制的逻辑运算法则。
第1页/共10页
二进制的逻辑运算
• 二进制的逻辑运算:
• 1.逻辑“或”
“V”;
• 2.逻辑“与”
“Λ”;
• 3.逻辑“非”
“‾”;
• 4.逻辑“异或“ “ ”;
第2页/共10页
二进制的逻辑运算
逻辑“或”运算: 符号:“V”; 法则现方式做保护处理对用户上传分享的文档内容本身不做任何修改或编辑并不能对任何下载内容负责
二进制的逻辑运算
• 二进制数1和0在逻辑上可以代表“真”与“假”、“是”与“否”、“有”与 “无”。这种具有逻辑属性的变量就称为逻辑变量。
• 逻辑变量“1”“0”之间的运算称为逻辑运算。 • 计算机中的晶体二极管的 “通电”或 “断开”也会用“1”和“0”来进行逻辑控
逻辑“非”运算: 符号: “‾”; 法则:又称为逻辑否定,就是将原逻辑变量的状态求反。
第5页/共10页
二进制的逻辑运算
逻辑“异或“
符号: “
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1、二进制的算术运算
二进制数的算术运算非常简单,它的基本运算是加法。
在计算机中,引入补码表示后,加上一些控制逻辑,利用加法就可以实现二进制的减法、乘法和除法运算。
(1)二进制的加法运算
二进制数的加法运算法则只有四条:0+0=0 0+1=1 1+0=1 1+1=10(向高位进位)
例:计算1101+1011的和
由算式可知,两个二进制数相加时,每一位最多有三个数:本位被加数、加数和来自低位的进位数。
按照加法运算法则可得到本位加法的和及向高位的进位。
(2)二进制数的减法运算
二进制数的减法运算法则也只有四条: 0-0=0 0-1=1(向高位借位) 1-0=1 1-1=0
例:计算11000011 00101101的差
由算式知,两个二进制数相减时,每一位最多有三个数:本位被减数、减数和向高位的借位数。
按照减法运算法则可得到本位相减的差数和向高位的借位。
(3)二进制数的乘法运算
二进制数的乘法运算法则也只有四条: 0 * 0 = 0 0 * 1 = 0 1 * 0 = 0 1 * 1 = 1
例:计算1110×1101的积
由算式可知,两个二进制数相乘,若相应位乘数为1,则部份积就是被乘数;若相应位乘数为0,则部份积就是全0。
部份积的个数等于乘数的位数。
以上这种用位移累加的方法计算两个二进制数的乘积,看起来比传统乘法繁琐,但它却为计算机所接受。
累加器的功能是执行加法运算并保存其结果,它是运算器的重要组成部分。
(4)二进制数的除法运算
二进制数的除法运算法则也只有四条:0÷0 = 00÷1 = 01÷0 = 0 (无意义) 1÷1 = 1
例:计算100110÷110的商和余数。
由算式可知,(100110)2÷(110)2得商(110)2,余数(10)2。
但在计算机中实现上述除法过程,无法依靠观察判断每一步是否“够减”,需进行修改,通常采用的有“恢复余数法”和“不恢复余数法”,这里就不作介绍了。
2、二进制数的逻辑运算
计算机所以具有很强的数据处理能力,是由于在计算机里装满了处理数据所用的电路。
这些电路都是以各种各样的逻辑为基础而构成的简单电路经过巧妙组合而成的。
逻辑变量之间的运算称为逻辑运算,它是逻辑代数的研究内容。
在逻辑代数里,表示"真"与"假"、"是"与"否"、"有"与"无"这种具有逻辑属性的变量称为逻辑变量,像普通代数一样,逻辑变量可以用A,B,C,……或X,Y,Z……来表示。
对二进制数的1和0赋以逻辑含义,例如用1表示真,用0表示假,这样将二进制数与逻辑取值对应起来。
由此可见,逻辑运算是以二进制数为基
础的。
值得指出的是,普通代数的变量可以有各种各样的取值,而逻辑变量的取值只有两种:真和假,也就是1和0。
逻辑运算包括三种基本运算:逻辑加法(又称"或"运算)、逻辑乘法(又称"与"运算)和逻辑否定(又称"非"运算)。
此外,还有异或运算和符合运算,等等。
计算机的逻辑运算是按位进行的,不像算术运算那样有进位或借位的联系。
(1)逻辑加法(或运算)
逻辑加法通常用符号"+"或"∨"来表示。
对于逻辑变量A,B和C,它们的逻辑加运算关系为: A+B=C A∨B=C以上两式等价,都读作A或B等于C。
若逻辑变量取不同的值,则逻辑加运算规则如下:
0+0=0 0+1=1 1+0=1 1+1=1 或0∨0=0 0∨1=1 1∨0=1 1∨1=1
由上面式子可见,只要逻辑变量A或B中有一个为1,或两个都为1,则逻辑加的结果就为1;只有A和B同时为0时,C才等于0。
(2)逻辑乘法(与运算)
逻辑乘法通常用符号"*"或"∧"或"·"来表示。
对于逻辑变量A,B和C,它们的逻辑乘法运算关系为:A*B=C A∧B=C或A·B=C以上各式等价,都读作A与B等于C。
若逻辑变量取不同的值,则逻辑乘法运算规则如下:0*0=0 0∧0=00·0=0
0*1=0 0∧1=00·1=0
1*0=0 1∧0=01·0=0
1*1=1 1∧1=11·1=1
不难看出,逻辑乘法有"与"的意义,它表示仅当A和B同时为1时,其逻辑乘积C才等于1,其它情况C都等于0。
(3)逻辑否定(非运算)
逻辑非通常用在逻辑变量上方加一横线来表示,对于逻辑变量A和C,其逻辑否定运算规则为:A=C
由上式看出,逻辑变量A取值0时,其否定C等于1;反之,A取值1时,其否定C等于0。
非逻辑的运算规则为:0=1,读作非0等于1;1=0,读作非1等于0。