为了账号安全,请及时绑定邮箱和手机立即绑定

前48位内存的问题

看了问答,貌似是老师弄错了。

前48位应该是0x0到0xffffffffffff   //12个fhttp://img1.sycdn.imooc.com//57e77b7b00018def12800720.jpg

这样的话是不是说这张图片也是有问题的?

我用gdb 打印了一下有关栈的地址发现都是0x7开头的,地址长12位。

http://img1.sycdn.imooc.com//57e77ce70001997608450062.jpg

上述图片p是函数指针。

问题是为什么地址是0x7开头的,0x8000000000到0xffffffffffff的东西是啥,是在栈上吗

正在回答

1 回答

48位指的是【47:0】,有第0位;

800000000 上面有讲,存放的是系统内核,操作系统用的。

我感觉是这样,欢迎指正。

0 回复 有任何疑惑可以回复我~
#1

qq_way_0 提问者

请问一下 这个是什么意思【47:0】. 系统内核如果是48位之后的话,应该是0x1000000000000//12个0 0xffffffffffffffff//16个f 0x0~0xf这样应该算是4位吧 2^4 我是这么理解的。 如果按照老师的理解前48位中,栈在最高位那么地址应该是 0xfk开头而不应该是0x7开头吧
2016-09-28 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Linux C语言指针与内存
  • 参与学习       116432    人
  • 解答问题       250    个

指针-C语言的核心,代领大家对c语言有更加深刻的理解

进入课程

前48位内存的问题

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信