第四章 数据运算
4.1 逻辑运算
逻辑运算是指那些应用于模式中一个二进制位,或在两个模式中相应的两个二进制位的相同基本运算
-
位层次上的逻辑运算
-
模式层次上的逻辑运算
模式层次上的逻辑运算是具有相同类型的位层次上的n个逻辑运算,这里的n就是模式中的位的数目。
4.1.1 位层次上的逻辑运算
一个位可以是0或1,“0”代表逻辑“假”,“1”代表逻辑“真”,使用布尔代数的定义去操作二进制位4种用来操作二进制位的位层次上的运算:
非(NOT)与(AND)或(OR)异或(XOR)
非(NOT)
NOT运算符是一元操作符
只有一个输入,输出位是输入位的相反,如果输入0,则输出1;如果输入1,则输出0
与(AND)
AND运算符是二元操作符
有两个输入,如果输入都是1,则输出1;其它3种情况,输出都是0
或(OR)
OR运算符是二元操作符
有两个输入,如果输入都是0,则输出0;其它3种情况,输出都是1
异或(XOR)
XOR运算符是二元操作符
有两个输入,如果输入相同,则输出0;如果输入不同,则输出1
4.1.2 模式层次上的逻辑运算
相同的4个运算符(NOT,AND,OR,XOR)被应用到n位模式
复位(掩码)
对指定的位复位
- AND 指定的位通过掩码 复位—0
- OR 指定的位通过掩码 复位—1
- XOR 指定的位通过掩码 复位 取反
4.2 移位运算
移位运算移动模式中的位,改变位的位置。它们能向左或向右移动位。我们可以把移位运算分成两大类:逻辑移位运算和算术移位运算。
- 逻辑移位运算
- 算术移位运算
4.2.1 逻辑移位运算
逻辑移位
循环移位
算术移位
4.3 算术运算
算术运算包括加、减、乘、除,适用于整数和浮点数
4.3.1 整数的算术运算
下面为整数运算的UML图:
下面为整数运算的一些例子:
4.3.2 实数的算术运算
实数的加减法,以浮点数存储的加法和减法被简化为小数点对齐后以符号加绝对值(符号和尾数的组合)存储的两个整数的加法和减法
下面为实数运算的UML图:
下面为实数运算的简化过程:
下面为实数运算的一些例子:
8994)]
下面为实数运算的一些例子:
[外链图片转存中…(img-fT47WVT4-1721744218994)]
[外链图片转存中…(img-WNOPO26y-1721744218995)]
[外链图片转存中…(img-wrN7B9Ds-1721744218995)]