• 16进制与8进制之间的快速转码


    题目: (123A.B)H=(?)Q

    解:    一般的思路是16进制-->10进制-->8进制(即以10进制为桥梁)

                或者         16进制-->2进制-->8进制   (即以2进制为桥梁)

                实际上,还有更好的方法。(放在最后讨论)

                法1

                      转10进制:

                              整数部分:1*163+2*162+3*161+10*160=4666 (十进制)

                              小数部分:11*16-1=0.6875                              (十进制)

                              合起来是:4666.6875

                     转8进制:

                             整数部分:采用不断除以8,取余倒排的方法,得:110728

                             小数部分:采用不断乘以8,取整正排的方法,得:0.548

                             合起来是:11072.548

                法2:

                      转2进制:

                              整数部分:0001 0010 0011 1010(一个16进制位需要4个二进制位表示)

                              小数部分:10112

                              合起来是:0001 0010 0011 1010.10112

                      转8进制:

                              整数部分:001 001 000 111 010 2  -->110728 (一个8进制位只需要3个二进制位表示)

                              小数部分:101 1002 -->548

                              合起来是:11072.548

                 法3:

                     1*163         +  2*162      +  3*161      +  10*160          +   11*16-1

                   =1*(8*2)+  2*(8*2)2  +  3*(8*2)+  10*(8*2) 0   +   11*(8*2)-1          

                   =8*83           +   8*82       +  6*81        +   10*80         +   5.5*8-1

                   =886a.(5.5)    (很明显,这个8进制数很不规则 0.0)

                   类比10进制的进位规则,这里,应为:满8进一

                   整数部分:110728

                   小数部分:一位大小为5.5的数字应该怎么处理呢?因为不满8肯定不能进位啊。那就只有一个办法了:往小数点后扩充几位数字(即5*8-1+X*8-2+..),使 得它们的“总体和”为5.5。

                                  5.5*8-1=5*8-1+X*8-2   ==> x=4

                   合起来是:11072.548

                   完了。只要多注意观察,多思考,好方法就出来啦。^_^

  • 相关阅读:
    注册时按钮上的时间倒计时
    不能修改/删除/添加数据.(NTFS问题)
    站在2009年的门槛上
    超强PHP分页类(转自PHPCHINA)
    System.Web.Caching.Cache类 缓存 各种缓存依赖
    Wxpython快速构建GUI窗口程序
    Python2 和 Python3 有哪些差别
    12306数据库遭泄露,请尽快修改密码
    王欣复出后的第一款产品
    在命令行打开安卓UI界面
  • 原文地址:https://www.cnblogs.com/tupx/p/2962523.html
Copyright © 2020-2023  润新知