免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: shingle7720
打印 上一主题 下一主题

64位操作系统中的指针不是64位码? [复制链接]

论坛徽章:
2
程序设计版块每日发帖之星
日期:2015-06-17 22:20:00每日论坛发贴之星
日期:2015-06-17 22:20:00
11 [报告]
发表于 2009-12-30 09:20 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
154
2022北京冬奥会纪念版徽章
日期:2015-08-07 17:10:5720周年集字徽章-年
日期:2022-10-26 16:44:2015-16赛季CBA联赛之深圳
日期:2022-11-02 14:02:4515-16赛季CBA联赛之八一
日期:2022-11-28 12:07:4820周年集字徽章-20	
日期:2023-07-19 08:49:4515-16赛季CBA联赛之八一
日期:2023-11-04 19:23:5115-16赛季CBA联赛之广夏
日期:2023-12-13 18:09:34
12 [报告]
发表于 2010-01-02 16:23 |只看该作者
震精

论坛徽章:
0
13 [报告]
发表于 2010-01-02 18:00 |只看该作者
LP64模型

论坛徽章:
0
14 [报告]
发表于 2010-01-02 21:21 |只看该作者
原帖由 liuty2006 于 2009-12-28 12:55 发表

刚装了一个visual studio 2010。想试一下64位编程。
怎么都是32位的?
你是怎么设置的?


生成的 project,默认是 32 位的,要编译成 64 位,首先要增加 64 位编译选项

假设你的 project 名是 t


1、增加 64 编译选项

"Project"  --->  "t Properties"  ---> 在 "t Property page“ 页面里点击 ---> "Configuration Manager“  ----> 在 "Active solution platform" 下拉菜单选择 "X64“ ---> "Close" 关闭退出即可。


2、编译 64 位

回到 t Properties Pages 页而里,在 Platform 下拉菜单里选择 "Active(X64)",然后“确定”退出

这时,就选择了为 x64 平台编译代码,接着编译就 OK 了。

论坛徽章:
0
15 [报告]
发表于 2010-01-02 21:31 |只看该作者
s# kldstat
Id Refs Address            Size     Name
1    1 0xffffffff80100000 bd23e0   kernel
s#


如果 sizeof(指针) 还是4个字节,多半是压根没用64位编译选项。

论坛徽章:
0
16 [报告]
发表于 2010-01-02 21:51 |只看该作者
原帖由 pmerofc 于 2009-12-30 09:20 发表


同意。
甚至同一个环境下
不同种类的指针的长度也未必相同


能不能举几个例子呢

论坛徽章:
0
17 [报告]
发表于 2010-01-02 21:58 |只看该作者
原帖由 beepbug 于 2009-12-28 07:32 发表

最后一句确实比较靠谱。
所谓64位操作系统者,是指能在64位CPU上运行的系统。所谓64位CPU,这64位指的是数据字长,而不是地址字长。指针最终归结到地址。因此,两者没有必然的联系。都是64位,是允许的;一个是,一个不是,也是允许的。
譬如,过去的8位CPU,多数是,数据长8位,地址长16位。最早的16位CPU,数据16位,地址20位。
一般的8位编译器,指针多是16位的。但是,如果你设计一个Z80系统,为了让它能访问汉字,采用地址复用技术,让它能访问1MB空间(20位地址)。你可以自行设计一个C编译器来支持20位地址。...


但你没一句是靠谱的,又在扯东扯西

论坛徽章:
0
18 [报告]
发表于 2010-01-02 22:20 |只看该作者
google一下吧

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
19 [报告]
发表于 2010-01-02 22:31 |只看该作者
原帖由 pmerofc 于 2009-12-30 09:20 发表


同意。
甚至同一个环境下
不同种类的指针的长度也未必相同


那种古老的NEAR和FAR指针?
俺打出生起没用过

论坛徽章:
0
20 [报告]
发表于 2010-01-03 00:57 |只看该作者
原帖由 群雄逐鹿中原 于 2010-1-2 22:31 发表


那种古老的NEAR和FAR指针?
俺打出生起没用过


出生前用过?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP