逻辑电路与逻辑运算笔记分享

简介: 【4月更文挑战第1天】逻辑电路与逻辑运算笔记分享

在数字电路,我们经常会遇到逻辑电路,而在 C 语言中,我们经常用到逻辑运算。二者在原理上是相互关联的。

首先,在“逻辑”这个概念范畴内,存在真和假这两个逻辑值,而将其对应到数字电路或C语言中,就变成了“非 0 值”和“0 值”这两个值,即逻辑上的“假”就是数字电路或 C 语言中的“0”这个值,而逻辑“真”就是其它一切“非 0 值”。

然后,我们来具体分析一下几个主要的逻辑运算符。我们假定有2个字节变量:A 和 B, 二者进行某种逻辑运算后的结果为 F。

一、以下逻辑运算符都是按照变量整体值进行运算的,通常就叫做逻辑运算符:

  1. && 逻辑与。F = A && B,当 A、B 的值都为真(即非 0 值,下同)时,其运算结果 F 为真(具体数值为 1,下同);当 A、B 值任意一个为假(即 0,下同)时,结果 F 为假(具 体数值为 0,下同)。
  2. || 逻辑或。F = A || B,当 A、B 值任意一个为真时,其运算结果 F 为真;当 A、B 值都 为假时,结果 F 为假。
  3. ! 逻辑非,F = !A,当 A 值为假时,其运算结果 F 为真;当 A 值为真时,结果 F 为假。

二、以下逻辑运算符都是按照变量内的每一个位来进行运算的,通常就叫做位运算符:

  1. & 按位与,F = A & B,将 A、B 两个字节中的每一位都进行与运算,再将得到的每一位 结果组合为总结果 F,例如 A = 0b11001100,B = 0b11110000,则结果 F 就等于 0b11000000。
  2. | 按位或,F = A | B,将 A、B 两个字节中的每一位都进行或运算,再将得到的每一位结 果组合为总结果 F,例如 A = 0b11001100,B = 0b11110000,则结果 F 就等于 0b11111100。
  3. ~  按位取反,F = ~A,将 A 字节内的每一位进行非运算(就是取反),再将得到的每一 位结果组合为总结果 F,例如 A =  0b11001100,则结果 F 就等于 0b00110011;这个运算符我  们在前面的流水灯实验里已经用过了,现在再回头看一眼,是不是清楚多了。
  4. ^  按位异或,异或的意思是,如果运算双方的值不同(即相异)则结果为真,双方值相  同则结果为假。在C语言里没有按变量整体值进行的异或运算,所以我们仅以按位异或为例, F = A ^ B,A = 0b11001100,B =  0b11110000,则结果 F 就等于 0b00111100。

数字电路中的常用符号,这些符号有利于我们理解器件的逻辑结构


目录
相关文章
【加法笔记系列】逻辑电路的实现
了解完二极管和 PM 结原理后,就可以看懂简单的逻辑电路了 * 载流子 * 场效应管 * 与门 AND * 二极管实现 * 继电器实现 * CMOS 实现 * NMOS 实现 * 或门 OR * 或非 NOR * 与非 NAND ## 载流子 > 在[物理学](https://zh.wikipedia.org/wiki/%E7%89%A9
1534 0
《逻辑与计算机设计基础(原书第5版)》——3.9 二进制加法器
本节书摘来自华章计算机《逻辑与计算机设计基础(原书第5版)》一书中的第3章,第3.9节,作者:(美)M.莫里斯·马诺(M. Morris Mano)著, 更多章节内容可以访问云栖社区“华章计算机”公众号查看。
2400 0
409计算机组成原理学习笔记——运算方法和运算电路(二)
409计算机组成原理学习笔记——运算方法和运算电路(二)
276 1
409计算机组成原理学习笔记——运算方法和运算电路(二)
|
存储
410计算机组成原理学习笔记——运算方法和运算电路(三)
410计算机组成原理学习笔记——运算方法和运算电路(三)
286 1
410计算机组成原理学习笔记——运算方法和运算电路(三)
408计算机组成原理学习笔记——运算方法和运算电路(一)
408计算机组成原理学习笔记——运算方法和运算电路
210 1
408计算机组成原理学习笔记——运算方法和运算电路(一)
|
存储
410计算机组成原理学习笔记——运算方法和运算电路(四)
410计算机组成原理学习笔记——运算方法和运算电路
130 1
410计算机组成原理学习笔记——运算方法和运算电路(四)
【加法笔记系列】逻辑门、半加器、全加器、波纹进位加法器
在之前了解 PN 结以及逻辑电路实现之后,终于可以开始尝试实现计算机的加法了。 * 逻辑门,包括与、或、与非、异或 * 半加器,半加器电路 * 全加器,全加器电路 * 波纹进位加法器 ## 逻辑门 #### 与门 AND ![3357762234-59c25c8fa5090_articlex](https://user-images.githubuse
11458 3
|
算法
《数字逻辑设计与计算机组成》一3.5 2的补码加法/减法器
本节书摘来自华章出版社《数字逻辑设计与计算机组成》一 书中的第3章,第3.5节,作者:[美]尼克罗斯·法拉菲,更多章节内容可以访问云栖社区“华章计算机”公众号查看。
1461 0
《逻辑与计算机设计基础(原书第5版)》——3.10 二进制减法
本节书摘来自华章计算机《逻辑与计算机设计基础(原书第5版)》一书中的第3章,第3.10节,作者:(美)M.莫里斯·马诺(M. Morris Mano)著, 更多章节内容可以访问云栖社区“华章计算机”公众号查看。
1723 0
http://www.vxiaotou.com