【南京大学】袁春风教授的 计算机系统基础(一)——第3章 运算电路基础 课堂笔记
首先,介绍布尔代数和数字逻辑电路的基础性内容;然后,介绍C语言中的按位运算以及逻辑运算;接着,介绍高级语言中的整数加减运算及其对应的底层实现电路。
·
三、运算电路基础
- 首先,介绍布尔代数和数字逻辑电路的基础性内容;
- 然后,介绍C语言中的按位运算以及逻辑运算;
- 接着,介绍高级语言中的整数加减运算及其对应的底层实现电路。
3.1 数字逻辑电路基础
3.1.1 布尔代数

3.1.2 基本逻辑电路



3.1.3 多路选择器

3.1.4 加法器
- 一位加法器

- n位加法器

- n位带标志加法器

3.1.5 n位整数加/减运算器



3.2 从C表达式到逻辑电路
- 计算机中的所有运算都是相应的运算电路完成的,而这些运算电路是由基本的逻辑门构成的。
- 问题:那么计算机是如何知道在运算电路中该进行什么操作,该对什么样的操作数进行运算的呢?




- 从高级语言表达式到门电路之间的转换过程:
- 高级语言要能在机器上执行,实际上是做了两次转换;
- 一次是高级语言表达式转换成指令;
- 然后这个指令在电路上执行
- 高级语言程序表达式中的各类运算会被编译器转换成相应的运算指令,程序运行时,CPU执行这些指令控制操作数在运算电路中被处理。
3.3 C语言中的各类运算
本讲介绍C语言程序中涉及的各类运算
3.3.1 算术运算——按位运算

3.3.2 逻辑运算——移位运算


3.3.3 移位运算和按位运算举例




3.3.4 位截断和位扩展运算



3.4 整数加减运算
3.4.1 加减运算生成的标志信息







3.4.2 加减运算溢出公式及举例


DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐


所有评论(0)