如何表示内存大小(内存用十六进制表示)

	我们在看编程书籍、嵌入式书籍的时候,经常会用到内存大小,那么内存大小是如何表示的呢?
	如我们使用内存的范围为0X8000 0000~0X8020 0000,那么这块内存是多大呢?今天我们就分析这个问题

计算过程

首先我们要知道,在系统中我们说内存大小是使用byte为单位的。也就是说1=1byte,另外我们要熟悉16进制的转换,那么就有了:

0X1 = 1byte
0X10 = 16 byte
0X100 = 16*16 byte = 256 byte
0X1000 = 16 *256 byte= 4 * ( 4 * 256byte) = 4 * 1024 byte =4K byte
0X1 0000 = 16 * 4K byte = 64K byte
0X10 0000 = 16 * 64K byte = 1024K byte = 1M byte
0X100 0000 = 16 * 1M byte = 16M byte
0X1000 0000 = 16 * 16M byte = 256M byte
0X1 0000 0000 = 16 * 256Mbyte = 4*(4*256) Mbyte = 4*1024Mbyte=4Gbyte

好了,我是按一定倍数慢慢增大的,就明白它的计算方法了。
还有,为了更好的记忆,我们还需要将我们经常使用的单位列举出来

1K byte = 4* 256byte = 4* 0X100 = 0X400 
256M 上面有了
512M = 2* 256M = 2*0X1000 0000 = 0X2000 0000 byte
1G = 2* 512M = 0X4000 0000 byte
4G = 0X1 0000 0000 byte
8G = 0X2 0000 0000 byte
16G = 16 * 1G = 4 * 4 * 1G = 0X4 0000 0000 byte

数据对应表

那么我们就有了下面的数据:

0X1 			= 	1 byte
0X10			=	16 byte
0X100 			=	256 byte
0X400 			=	1K byte
0X1000			=	4K byte
0X1 0000		=	64K byte
0X10 0000		=	1M byte
0X100 0000		=	16M byte
0X1000 0000		=	256M byte
0X2000 0000		=	512M byte
0X4000 0000		=	1G byte
0X1 0000 0000	=	4G byte
0X2 0000 0000 	= 	8G byte
0X4 0000 0000 	= 	16G byte

常用的数据都列举出来了。
那么上面的数据0X8000 0000~0X8020 0000 就等0X20 0000 = 0X10 0000 *2 = 2M ,就用最挨近上面的数据简单计算就可以了。

创作不易,欢迎点赞、关注。

–好记性不如烂笔头。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

six2me

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值