OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 6208|回复: 7

申请内存,返回首地址的问题

[复制链接]

86

主题

984

帖子

0

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
1850
金钱
1850
注册时间
2013-4-15
在线时间
163 小时
发表于 2014-5-26 13:58:02 | 显示全部楼层 |阅读模式
5金钱


有点小问题想问下,看程序也没看懂,想问下,在申请内存的时候,mymalloc函数返回的首地址是不是0002H?虽然分配内存的时候是从顶部向底部的方向分配的,但首地址应该是0002H吧?不是00BCH吧?我理解的对吗?大神指点下

最佳答案

查看完整内容[请看2#楼]

是从00BCH开始分配的。。。 看你分配多少字节,首地址是内存区域的最低地址
合肥-文盲
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2014-5-26 13:58:03 | 显示全部楼层
是从00BCH开始分配的。。。
看你分配多少字节,首地址是内存区域的最低地址
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

86

主题

984

帖子

0

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
1850
金钱
1850
注册时间
2013-4-15
在线时间
163 小时
 楼主| 发表于 2014-5-27 10:35:39 | 显示全部楼层
回复【2楼】正点原子:
---------------------------------
原子哥,内存区域的“最低地址”对于我上面那个图就是0002H吧?我看了下程序的其它部分,基本确定就是这样的
合肥-文盲
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2014-5-27 23:42:18 | 显示全部楼层
回复【3楼】合肥-文盲:
---------------------------------
看你分配多少内容了...
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

86

主题

984

帖子

0

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
1850
金钱
1850
注册时间
2013-4-15
在线时间
163 小时
 楼主| 发表于 2014-5-28 09:38:00 | 显示全部楼层
回复【4楼】正点原子:
---------------------------------
sd_size=SD_GetSectorCount(); //得到扇区数 
LCD_ShowNum(164,170,sd_size>>11,5,16); //显示SD卡容量

这个SD卡容量的计算方法原理是什么呀?我感觉应该是:扇区数*一个扇区的大小(512字节)/1024/1024=多少M,为什么拿得到的扇区数右移11位就是多少M容量,没明白计算的原理
合肥-文盲
回复

使用道具 举报

10

主题

274

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
336
金钱
336
注册时间
2013-12-3
在线时间
0 小时
发表于 2014-5-28 09:57:38 | 显示全部楼层
回复【5楼】合肥-文盲:
---------------------------------
额。很明显吧 扇区数*512=总字节数/2=多少K/1024=多少M
就是总扇区数*512之后就等于总字节数,然后/1024就相当于总扇区数*512/1024,这不相当于总扇区数/2(单位变成K),
然后再/1024,单位就成了M,结果就是sd_size>>11,不就是sd_size/2048了吗。。。sd_size/(2*1024)
不用谢了……
回复

使用道具 举报

86

主题

984

帖子

0

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
1850
金钱
1850
注册时间
2013-4-15
在线时间
163 小时
 楼主| 发表于 2014-5-28 09:58:47 | 显示全部楼层
回复【4楼】正点原子:
---------------------------------
明白了,一个无符号整数>>11位,就相当于除以2^11,就相当于除以2048,刚刚想明白了
合肥-文盲
回复

使用道具 举报

10

主题

274

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
336
金钱
336
注册时间
2013-12-3
在线时间
0 小时
发表于 2014-5-28 10:01:09 | 显示全部楼层
回复【7楼】合肥-文盲:
---------------------------------
恩 右移一位就是除以2一次方 左移就是则相反
不用谢了……
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-7-7 17:31

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表