大神帮忙看看,指针寻址的问题,谢谢!

问题如图所示,我知道整数左移3就变成指针了,那双整数左移5结果是什么?

图片说明:

大神帮忙看看,指针寻址的问题,谢谢!   

最佳答案

双整数左移5结果是什么?结果是形成每个双字数据的存储地址。
1、熟悉有关指针格式:
0000 0000 0000 0BBB BBBB BBBB BBBB BXXX  
其中0-2bit指定bit位,3-18bit指定byte字节。
2、实例,形成第41个数据的存储地址:
、D4(hex)=0000 0000 0000 0000 0000 0000 0010 1001(b)=29(hex),实际上就是常数41。
、如果29(hex)左移5位后,形成指针格式。其中0-2bit指定bit位,3-18bit指定byte字节:
D4(hex)=0000 0000 0000 0000 0000 0101 0010 0000(b)=520(hex),实际上就是等于地址格式数据164.0
3、那双整数左移5结果是什么?
结果是形成每个双字数据的存储地址。
如你的程序中每个双字的数据占用4个字节。那么,第41个数据的存储地址就164.0了。第80个数据的地址存储就320.0了。

提问者对于答案的评价:
谢谢,搞懂了!

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc284357.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2020年10月30日 下午10:49
下一篇 2020年10月30日

相关推荐