做而论道_CS: 求负数 (X < 0) 的 n 位补码,公式是: [ X ]补 = 2^n - | X | --------------------- 按照公式来求补码,是非常简单的事。 根本也不涉及什么:符号位原码反码取反加一。 例:-31 的八位补码是多少? 解: 2^8 - |-31 | = 256 - 31 = 225 = 1110 0001 (二进制) 这不就求出来了嘛! 但是,有人偏要找麻烦,鼓吹什么 “取反加一” ! 那就慢慢算吧。 --------------------- 先看,2^n 的二进制,是多少呢? 是:111 ... 1 + 1。 (共有 n 个 1,后面再加上一个 1。) 再看,| X | 的二进制,又是多少呢? 取绝对值后,就是 n 位的正数。 可写成:| X | = 0xx ... x。 (共有 n-1 个 x 。) 其中的 x,是一位二进制数,即 0 或 1。 --------------------- 所以,公式 2^n - | X | 的二进制形式,就是: 111 ... 1 + 1 - 0xx ... x 。 此公式,还可以改写为以下两种形式: (111 ... 1 - 0xx ... x)+ 1 (1) 111 ... 1 -(0xx ... x - 1) (2) 由小学所学的知识,可知: 方程(1) 和方程(2),是等效的。 --------------------- 另外:1 - 0 = 1、1 - 1 = 0。 因此:1 - x, 就是对 x 取反。 --------------------- 那么,方程 (1),就是:先取反、后加一; 而,方程 (2),就是:先减一、后取反。 至此,就证明了: 取反加一、减一取反,功能是相同的。 证明这个命题,只需用到小学的知识。 根本就不用:原码反码这些乱七八糟的事!
相关知识
宠物商店 案例分析
区块链宠物移动端交互原型模板、免费领取、宠物交易、宠物领养、宠物购买、宠物集市、用户中心、注册登录、订单管理、常用元件、通用元件、设计框架、规则说明、功能流程、界面流程、规则模板、Axure原型、rp
查找: 关键字=决策树分类
北京宠物火化殡葬服务全解析:价格、流程及注意事项
竞赛规则
小鼠繁育流程、要点及注意事项
Python笔试题
Python基于大数据技术的宠物商品信息比价及推荐系统
宠物流程与案例汇总
理赔流程及规则
网址: python决策树及规则解析(真实案例完整流程) https://m.mcbbbk.com/newsview195955.html
上一篇: 都市之废宅崛起 第003章 好感 |
下一篇: 决策树生成的决策规则转化成正则表 |