二进制、八进制、十六进制与十进制的不同顾名思义在于进位不同:

十进制遇十进一,9+1=10,19+1=20,199+1=200。相同数字前一位是后一位的十倍,例如11,前一个代表10,后一个是1。

一、八进制

八进制遇八进一,7+1=10,17+1=20,27+1=30。相同数字前一位是后一位的八倍,例如11,前一个代表8,后一个是1;

故八进制换十进制:

11(八进制)=1*8+1=9(十进制);

654(八进制)=6*8*8+5*8+4=428(十进制)

十进制换八进制:除k取余法,将十进制数除以转换进制数,倒过来取余数,得转换进制数。

129/8=16余1,16/8=2余0,2/8=0余2,

故十进制的129八进制应为201(验证:2*8*8+1=129)

572/8=71余4,71/8=8余7,8/8=1余0,

故十进制的572八进制应为1074(验证:1*8*8*8+7*8+4=572)

二、十六进制

同理八进制,十六进制是遇十六进一,除了1-9以后还有代表10-15的ABCDEF,其中A代表10,B代表11,以此类推。

故十六进制换十进制:

EF(十六进制)=14*16+15=239(十进制),

5A(十六进制)=5*16+10=90(十进制)

故十六进制换十进制:

895/16=55余15,55/16=3余7,3/16=0余3,

故十进制的895十六进制应为37F

三、bytes的十六进制

计算机进行的是二进制计算,四位二进制1111最大表示十进制的15,十六进制一位最大也是表示十进制的15,所以一位十六进制刚好可以换算为四位二进制,不多不少,为了传输和存储信息方便,一般用十六进制代替四位二进制。

python中的bytes就是由十六进制组成的数字。

最新文章

  1. Python3.5+selenium操作Chrome浏览器
  2. 让div垂直以及水平居中浏览器窗口
  3. QQ空间HD(4)-设置左侧菜单栏属性
  4. 开源PLM软件Aras详解三 服务端简易开发
  5. [LeetCode] Combinations (bfs bad、dfs 递归 accept)
  6. A9.linux驱动
  7. Android Gson使用笔记
  8. Yii2 场景
  9. 理解Spring中的IOC和AOP
  10. Space Golf~物理题目
  11. [Swift]LeetCode974. 和可被 K 整除的子数组 | Subarray Sums Divisible by K
  12. C# WebSocket Fleck 调用非托管C++ DLL 实现通信(使用char*接收)
  13. js 常用的工具函数
  14. mybatis-generator 覆盖新增XML
  15. 解析如何在C语言中调用shell命令的实现方法【转】
  16. 利用反射--调用一个按钮的Click事件
  17. uigrid配置详解(1)
  18. [leetcode]658. Find K Closest Elements绝对距离最近的K个元素
  19. Java中LinkedList实现原理
  20. [原创]解决jQuery.live在mobile safari(iphone / ipad / ipod)绑定失败的问题

热门文章

  1. $().attr()的使用方法 && $().html()与$().text()的差别
  2. Exchange 2013 的会议室邮箱用户一直无法正常登陆。
  3. "Hello World " —— 深入理解程序从编译到执行
  4. [ JavaScript ] JavaScript 实现继承.
  5. 好记性不如烂笔头——DML/DDL/DCL/TCL,OLTP/OLAP
  6. 使用U-Boot的TFTP(远程/网络内核)
  7. Linux Framebuffer驱动框架之二软件架构(未完待续)【转】
  8. Node.js+express 4.x 入门笔记
  9. Html5 ajax的跨域请求
  10. 浅谈自学Python之路(day2)