[例2] 将十进制数数20.59375转换成32位浮点数的二进制格式来存储.[解:] 首先分别将整数和分数部分转换成二进制数:20.59375=10100.10011然后移动小数点,使其在第1,2位之间10100.10011=1.010010011×24 e
来源:学生作业帮助网 编辑:作业帮 时间:2024/06/25 18:31:54
![[例2] 将十进制数数20.59375转换成32位浮点数的二进制格式来存储.[解:] 首先分别将整数和分数部分转换成二进制数:20.59375=10100.10011然后移动小数点,使其在第1,2位之间10100.10011=1.010010011×24 e](/uploads/image/z/1463540-68-0.jpg?t=%5B%E4%BE%8B2%5D+%E5%B0%86%E5%8D%81%E8%BF%9B%E5%88%B6%E6%95%B0%E6%95%B020.59375%E8%BD%AC%E6%8D%A2%E6%88%9032%E4%BD%8D%E6%B5%AE%E7%82%B9%E6%95%B0%E7%9A%84%E4%BA%8C%E8%BF%9B%E5%88%B6%E6%A0%BC%E5%BC%8F%E6%9D%A5%E5%AD%98%E5%82%A8.%5B%E8%A7%A3%3A%5D+%E9%A6%96%E5%85%88%E5%88%86%E5%88%AB%E5%B0%86%E6%95%B4%E6%95%B0%E5%92%8C%E5%88%86%E6%95%B0%E9%83%A8%E5%88%86%E8%BD%AC%E6%8D%A2%E6%88%90%E4%BA%8C%E8%BF%9B%E5%88%B6%E6%95%B0%EF%BC%9A20.59375%EF%BC%9D10100.10011%E7%84%B6%E5%90%8E%E7%A7%BB%E5%8A%A8%E5%B0%8F%E6%95%B0%E7%82%B9%2C%E4%BD%BF%E5%85%B6%E5%9C%A8%E7%AC%AC1%2C2%E4%BD%8D%E4%B9%8B%E9%97%B410100.10011%EF%BC%9D1.010010011%C3%9724+e)
[例2] 将十进制数数20.59375转换成32位浮点数的二进制格式来存储.[解:] 首先分别将整数和分数部分转换成二进制数:20.59375=10100.10011然后移动小数点,使其在第1,2位之间10100.10011=1.010010011×24 e
[例2] 将十进制数数20.59375转换成32位浮点数的二进制格式来存储.
[解:]
首先分别将整数和分数部分转换成二进制数:
20.59375=10100.10011
然后移动小数点,使其在第1,2位之间
10100.10011=1.010010011×24 e=4
于是得到:
S=0,E=4+127=131,M=010010011
最后得到32位浮点数的二进制存储格式为:
0100 0001 1010 0100 1100 0000 0000 0000=(41A4C000)16
我想问的是,将整数和分数部分转换成二进制数如何实现··
就是说:20.59375=10100.10011是怎么来的?
[例2] 将十进制数数20.59375转换成32位浮点数的二进制格式来存储.[解:] 首先分别将整数和分数部分转换成二进制数:20.59375=10100.10011然后移动小数点,使其在第1,2位之间10100.10011=1.010010011×24 e
整数部分20D=10100B这个很简单,将20除2取倒序列就可以了或者是分解法
20=2^4 0*2^3 2^2 0*2^1 0*2^0=10100B
小数部分是乘2取整数
0.59375*2=1.1875 1
0.1875*2=0.375 0
0.375*2=0.75 0
0.75*2=1.5 1
0.5*2=1 1
所以0.59375=0.10011
所以 20.59375=10100.10011