STM32——根据地址计算存储空间的大小

news/2024/11/8 9:11:02/

首先要知道

1MB=1024KB

1KB=1024Byte

1Byte=8bit

存储空间大小=结束地址-起始地址+1(用十进制来算,得到结果的单位是Byte)

十六进制与2进制转换表

十六进制2进制
00000
10001
20010
30011
40100
50101
60110
70111
81000
91001
A(10)1010
B(11)1011
C(12)1100
D(13)1101
E(14)1110
F(15)1111

 比如图中Block0的地址范围:0x0000 0000-0x1FFF FFFF

对应的二进制地址就是:

0x0000 0000对应0b0000 0000 0000 0000 0000 0000 0000 0000(每4个0对应16进制的1个0)

转换十进制就是0,即起始地址为0

0x1FFF FFFF对应0b1111 1111 1111 1111 1111 1111 1111 1111

转换十进制就是536870911,结束地址大小536870911

因此内存空间大小=536870911-0+1=536870912Byte

536870912Byte=524288KB=512MB

Block1的地址范围:0x20000000-0x3FFFFFFF

0x20000000转换为2进制:1000 0000 0000 0000 0000 0000 0000 0000

0x20000000转换为10进制:536870912

0x3FFFFFFF转换为二进制:1111 1111 1111 1111 1111 1111 1111 1111

0x3FFFFFFF转换10进制:1073741823

所以内存空间大小:1073741823-536870912+1=536,870,912

536870912Byte=524288KB=512MB


http://www.ppmy.cn/news/241120.html

相关文章

STL六大组件之——分配器(内存分配,好深奥的东西)

SGI设计了双层级配置器,第一级配置器直接使用malloc()和free(),第二级配置器则视情况采用不同的策略:当配置区块超过128bytes时,视之为“足够大”,便调用第一级配置器;当配置区小于128bytes时,视…

kmalloc分配大小的限制

原文地址:http://linux.chinaunix.net/techdoc/net/2009/04/28/1109237.shtml #################################################################################################################################### kmalloc是通过cache来实现的, 只不过每次…

采用链接分配方式进行外存分配时,可采用的两种形式及其特点。假定磁盘块大小为4K,对于128G的硬盘,其文件分配表FAT需占用多少存储空间?

采用链接分配方式进行外存分配时,可采用的两种形式及其特点。假定磁盘块大小为4K,对于128G的硬盘,其文件分配表FAT需占用多少存储空间? 隐式链接:除文件的最后一个盘快外,每个盘快中都存有指向下一个盘快的…

内存分配方式

一、内存分配方式 内存分配有三种方式: 1、从静态存储区分配。这种方式是在程序编译的时候已经分配好,并且这块内存在程序的整个运行期间都存在。如全局变量,static变量。 2、在栈上创建。在执行函数的时候,函数内局部变量的存储单…

kmalloc详解与分配大小的限制

kmalloc是通过cache来实现的, 只不过每次kmalloc的大小不同, 因此是从不同的cache中分配: /* include/linux/slab.h */ // 注意kmalloc是在头文件中定义的 static inline void *kmalloc(size_t size, gfp_t flags) {if (__builtin_constant_p(size)) { /*__builtin_constant_p…

java语言中 说明或声明数组时内存大小,说明或声明数组时不分配内存大小,创建数组时分配内存大小。...

试井过程中每一实测的压力、说明产量都不随时间变化的叫()。 或声学制具体规定着() 明数义务教育的主要特点() 组时组《中华人民共和国义务教育法》是哪一年颁布的?() 现代社会的迅速变化,不分以及高新科技的冲击,全世界都在进行着学校教育制…

linux安装分区大小分配

●文件系统 在windows下,我们常见到的文件系统有 FAT、 FAT32、 NTFS 在linux里可使用的文件系统有: Ext2:早期的格式,不支援日志 Ext3:是ext2改良版,增加了日志功能,是最基本且最常用的使用格式了。 ReiserFS:也有日志功能&#…

磁盘容量超过64T分配单元大小需要设置64K

转载于:https://www.cnblogs.com/Liangdalong/p/5894515.html