- 博客(4)
- 收藏
- 关注
原创 无符号数和定点数的乘法运算
本文介绍了硬件实现乘法的几种方法:1.无符号乘法通过移位和加法实现,使用寄存器存储操作数,控制逻辑根据最低位决定操作步骤,最终结果分高低位存储。2.原码乘法将绝对值视为无符号数运算,符号位单独处理。3.补码乘法通过加减和算术右移实现,需增加辅助位和双符号位处理。4.阵列乘法器分为无符号和补码两种:无符号型采用与门和全加器模仿笔算;补码型需进行原补码转换,结果再转回补码,使用求补电路实现转换。各种方法在硬件实现上各有特点,涉及不同的逻辑电路和时序控制。
2025-12-26 10:38:03
383
原创 定点数的加法和减法运算
本文系统介绍了计算机运算电路的核心技术。在补码运算部分,详细阐述了加减法规则和三种溢出检测方法,包括符号位比较、进位判断和双符号位检测。逻辑运算部分全面讲解了基本逻辑门(与、或、非)和复合逻辑门(与非、或非、异或等)的实现原理。硬件实现方面,重点分析了一位全加器的结构及其与半加器的区别,并深入探讨了三种加法器设计:串行进位加法器(传输延迟大)、先行进位加法器(4位组内并行)以及组间并行加法器(16位快速运算)。最后还介绍了利用加法电路实现减法运算的方法。这些内容构成了计算机算术逻辑单元(ALU)的基础理论体
2025-12-23 07:09:01
820
原创 数据的运算:移位运算
本文介绍了三种移位运算方法。逻辑移位适用于无符号数,左移补0右移补0,常用于位操作;算术移位针对有符号数,需保持符号位,补码移位规则更复杂;循环移位形成数据闭环,在加密和哈希算法中有重要应用。C语言中左移均为逻辑左移,右移则区分有无符号数。
2025-12-20 10:12:24
252
原创 C语言数据类型之间的转换
本文介绍了不同字长的整型和浮点型数据之间的转换规则。整型转换包括:同字长转换保持机器码不变,小转大进行0扩展或符号扩展,大转小直接截断。浮点转换方面:float转double可保持精度,double转float可能溢出或舍入,浮点转整型会截断小数,int转float可能精度损失,而int转double可精确表示所有32位整数。转换时需注意数据范围和精度问题。
2025-12-19 11:12:44
185
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅