运算中的溢出

运算结果超出范围则溢出

判断溢出:

  • 无符号数:最高位向更高位进位或借位

    例: 1111 1111 B + 0000 0001 B

  • 有符号数:两数相加得负数(上溢),两数相减得正数(下溢)

    例:

    • 0111 1111 B + 0000 0001 = 1000 0000 (上溢)

    • [+72] + [+98] ; [72] = 0100 1000 B ; [98] = 0110 0010 B

      [72] + [98] = 10101010 (上溢)

基本逻辑门及常用逻辑部件

与运算

与运算:全真则真,有假则假

符号:“•”、“&” 、 “∧”、“×”

1表示真 0表示假

A
A
B
B
&
&
Y
Y
Viewer does not support full SVG 1.1

A•B=Y
A B C
1 1 1
1 0 0
0 1 0
0 0 0

或运算

或运算:有真则真,全假则假

符号:“ + ” 、 “ ∨ ”、“ | ”

1表示真 0表示假

A
A
B
B
≧1
≧1
Y
Y
Viewer does not support full SVG 1.1

A•B=Y
A B C
1 1 1
1 0 1
0 1 1
0 0 0

非运算

非运算:取反

符号:“  ̄ ”

1表示真 0表示假

A
A
1
1
Y
Y
Viewer does not support full SVG 1.1

A = B
A B
1 0
0 1

与非运算

先做与运算在做非运算

A•BA∧B

1
1
F
F
&
&
F’
F’
A
A
B
B
&
&
A
A
B
B
F
F
Viewer does not support full SVG 1.1

与非逻辑真值表
A B F
0 0 1
0 1 1
1 0 1
1 1 0

或非运算

先做或运算在做非运算

A+BA∨B

1
1
F
F
≧1
≧1
F’
F’
A
A
B
B
≧1
≧1
A
A
B
B
F
F
Viewer does not support full SVG 1.1

或非逻辑真值表
A B F
0 0 1
0 1 0
1 0 0
1 1 0

异或运算

异或逻辑的布尔代数表达式:F =A • B + A • B = A ⊕ B

异或运算是两个变量的运算

运算规则:相同为0 相异为1

=1
=1
A
A
B
B
F
F
Viewer does not support full SVG 1.1

异或逻辑真值表
A B F
0 0 0
0 1 1
1 0 1
1 1 0