数字电路设计中的二进制补码计算详解
创作时间:
作者:
@小白创作中心
数字电路设计中的二进制补码计算详解
引用
CSDN
1.
https://m.blog.csdn.net/weixin_43277020/article/details/140363011
二进制补码计算是数字电路设计中的基础知识,也是计算机科学的重要组成部分。本文将从原码、反码和补码的基本概念出发,深入探讨补码在乘法运算中的应用,帮助读者更好地理解这一核心概念。
基本知识
原码(Sign and Magnitude)是一种最简单的表示法,使用符号位和数值位来表示整数。
符号位:最高位是符号位,0表示正数,1表示负数。
数值位:剩下的位表示数值的大小。
反码(One’s Complement)是通过将数值位逐位取反来表示负数。
正数的反码:与其原码相同。
负数的反码:符号位为1,数值位逐位取反。
补码(Two’s Complement)是计算机中最常用的表示法,通过在反码的基础上加1来表示负数。它解决了反码表示零有两个表示的问题,并且使加减法运算更为简便。
正数的补码:与其原码相同。
负数的补码:符号位为1,数值位逐位取反后加1。
乘法
正数和负数的乘法共有4种情况:
- 正正得正
- 正负为负
- 负正为负
- 负负得正
正数乘正数
常规运算即可。
负数乘正数
- 负数写在被乘数的位置
- 正数写在乘数的位置
- 部分积需要符号扩展,扩展长度为2n
- 另一个例子:8bit x 8bit = 16 bit
负数乘负数
4bit x 4bit = 8bit
- 负数需要进行符号扩展
- 符号位的计算单独处理
原理说明
对于1 A N − 2 A N − 3 . . . A 0 1A_{N-2}A_{N-3}...A_01AN−2 AN−3 ...A0 表示的Nbit负数补码,其真实的值为A = ( − 1 ) × 2 N − 1 + A N − 2 × 2 N − 2 + . . . + A 0 × 2 0 A = (-1)\times 2^{N-1} + A_{N-2}\times 2^{N-2} +...+ A_0 \times 2^0A=(−1)×2N−1+AN−2 ×2N−2+...+A0 ×20。即− 2 N − 1 -2^{N-1}−2N−1加上除符号bit外将其余bit看成原码表示的值。例如。1011的4bit补码表示的实际值为− 1 × 2 3 + 3 = − 5 -1\times 2^{3} + 3=-5−1×23+3=−5。
在补码的世界里,一个数乘(-1)等于求这个数的补码。
热门推荐
如何实现整站搜索引擎优化(掌握15个有效的优化技巧)
古代漕运的管理与功能
《忍者必须死三》诗意古风昵称精选:从诗句到游戏的意境融合
什么是解决问题的能力(深度好文)
金牛座今日运势
经济危机来袭怎么办?这份实用指南请收好
职业能力倾向测验B类怎么准备?
蓝牙5.0模块助力闹钟升级,开启智能生活第一步
解决手机故障并提升性能的实用指南
牙科专家推荐:正确刷牙法+电动牙刷,远离牙齿卡骨困扰
智控未来:轨道交通新篇-探索智能化系统在城市轨道交通中的应用
正确引用经典诗词名句的6种方式,让文章从此文采斐然
《甄嬛传》中的ISTJ金牛男:温实初的角色分析
双十一后想靠买彩票回本?这些真相你必须知道
举证加班费最有力的证据
Spring Bean作用域:企业级应用的最佳实践
批评与自我批评发言稿简短
ESP8266+阿里云,轻松打造智能家居
爱情观的理解与认识:探索六大爱情模式,寻找你的情感归属
SPI从原理到应用
如何成功转行泰康养老社区销售?
瑞虎8 PLUS 1.6T冬季保养秘籍大公开!
风险与收益的平衡?这种平衡如何影响投资策略?
如何从数据算法的角度确定交通高峰期
解决 Android 手机网络断开连接的 5 个方法
财务管理制度是什么?如何建立有效的财务管理制度?
江河湖海皆可爱,莞邑文脉源流长
项羽的军事才能:历史评价与现代反思
你的手机可能正在偷听你!
如何改善紧张的职场人际关系氛围