zoukankan      html  css  js  c++  java
  • 关于二级制转换为十进制公式的思考

      1、问题

      在学习《深入理解计算机系统》第二版第二章整数运算中的除以2的幂小节时,发现机器数位表示转换为无符号数使用了下面这一公式:

     这一公式其实就是二进制转换为10进制的数学符号表示,我疑惑的点在于表示形式为什么是这样的。回想当年信息技术课上老师也没详细解释原理,只是把他当成方法,一种经验,类似于1+1=2;隐隐中感觉有不合理之处,又说不出问题详细所在,总感觉缺少了部分逻辑。

      2、思考

       2.1 数码、数位、基数、位权?:进位计数制

       2.2 发现问题

      以上基数、位权、实例的推导过程都站在10进制的角度进行,二进制中只有'0','1'两个符号,而上图二进制转换位10进制中基数为2,位权中的幂也是10进制数表示。

    现代人类生活、基础教育都是使用10进制数,也可以说人的默认设置就是10进制。之所以对转换公式误解是误将位权2^i次方当作二级制表示,实际上在这一步就已经将二进制转换为10进制。

    当然此处还有一个隐含的逻辑,数有多种进制表示:二级制、八进制、10进制、16进制,也有多种数学符号:阿拉伯的12345.......,汉字的一、二、三、四等,以及埃及的Ⅰ、Ⅱ、Ⅲ等,无论用什么符号、什么形式,所表示的数,数量是一致的

  • 相关阅读:
    CopyOnWriteArrayList设计思路与源码分析
    点击页面按钮以excel保存到本地
    上传图片
    关于重复点击的
    去首尾空格还有换行问题//把数字换位大写字母//向后台传输数据
    判断输入的时间与当前的时间(判断时间是今天还是以前的)
    前端的一些小技巧
    git 操作大全
    移动web开发常见问题解决方案
    响应式布局
  • 原文地址:https://www.cnblogs.com/geekj/p/13930752.html
Copyright © 2011-2022 走看看