最近在备考软考程序员,遇到了小数转原码的问题。百度竟然很少解析,自己历经千辛万苦找到了方法,在这里分享一下。
给出题目:若机器字长n等于8,求十进制-5.1875的原码。
方法:与整数求原码方法一致,先求二进制数,判断符号位为正则最高位为0,为 负则最高位为1。
①观察发现由整数5和小数1875组成,分两步进行求二进制。
②5的二进制为101
③计算0.1875的二进制,采用"乘2取整,顺序排列"法。

④:故加上符号为最后结果为:1101.0011(第一个1是符号位表示负数)
接下里的小数补码和反码与整数换算方法一致。
评论的小伙伴,我确实是错了,图画错了,但是方法是对的。(已经更正!)