你的位置:首页 > 信息动态 > 新闻中心
信息动态
联系我们

整数进制的转换

2021/12/31 19:59:00

整数进制的转换

文章目录

  • 整数进制的转换
    • 十六进制、八进制、二进制与十转换
      • 1、C语言:
      • 2、进制只是整数值的表现形式,好比人穿上了各种衣服
      • 3、汇编语言:
    • 正数进制转化(十--->二<---->十六)
    • 十六进制的特性

十六进制、八进制、二进制与十转换

1、C语言:

十六进制:0x71ef ( 0-9,A(10),B(11),C(12),D(13),E(14),F(15) )

八进制:0127 (0-7)

十进制:100

2、进制只是整数值的表现形式,好比人穿上了各种衣服

值123: 可以表示为:123/0x7b/0173/01111011

3、汇编语言:

十六进制:1aH

八进制:17O

十进制:12D

二进制:110B

一个10进制整数a,转化成x进制的公式为:

a除以x取余,商继续除以x取余,直到商为0,所有余数逆序即为x进制数。

十六进制:
0 x 11 a = 1 ∗ 1 6 2 + 1 ∗ 1 6 1 + a ∗ 1 6 0 = 282 0x11a=1*16^2+1*16^1+a*16^0=282 0x11a=1162+1161+a160=282
八进制:
0127 = 1 ∗ 8 2 + 2 ∗ 8 1 + 7 = 87 0127=1*8^2+2*8^1+7=87 0127=182+281+7=87
二进制:
00101101 = 1 ∗ 2 5 + 1 ∗ 2 3 + 1 ∗ 2 2 + 1 = 45 00101101=1*2^5+1*2^3+1*2^2+1=45 00101101=125+123+122+1=45
请添加图片描述

正数进制转化(十—>二<---->十六)

常规做法:整数和小数分别转换,整数除以2取余,小数乘以2整数。如:22.8125

整数除以2,商继续除以2,得到0为止,将余数逆序排列

22/2 11 余0

11/2 5 余 1

5/2 2 余 1

2/2 1 余0

1/2 0 余 1

所以22 的二进制是10110

小数乘以2,取整,小数部分继续乘以2,取整,得到小数部分为0为止,将整数顺序排列

0.8125X2 = 1.625 取整1,小数部分是0.625

0.625X2 = 1.25 取整1,小数部分是0.25

0.25X2=0.5取整0,小数部分是0.5

0.5X2=1.0取整1,小数部分是0 结束

所以0.8125的二进制是0.1101

十进制22.8125等于二进制10110.1101

正整数十进制转二进制47

​ 表格法:512 128 64 32 16 8 4 2 1

正浮点数十进制转二进制-22.8125

​ 表格法:32 16 84 2 1 0.5 0.25 0.125 0.0625 0.03125 0.015625

二进制转十六进制

​ 四位变一位

十六进制转二进制

​ 一位变四位(十六进制中,2位为1个字节)

整数:1个字节,2个字节,4个字节,8个字节

浮点数:4个字节或者8个字节

二进制十进制十六进制
000000
000111
001022
001133
010044
010155
011066
011177
100088
100199
101010A
101111B
110012C
110113D
111014E
111115F

十六进制的特性

根据十六进制转化为二进制的方法,可以得出:在十六进制中,1个数字占4位,2个数字位为1个字节

十六进制表示数的好处是:可以直接观察这个数在内存中每个字节的内容

0x12345678

ox12 34 56 78