问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

巨指针巨指针

发布网友 发布时间:2024-07-22 09:37

我来回答

1个回答

热心网友 时间:2024-08-02 02:09

除了熟知的近指针和远指针,计算机系统中还存在一个名为巨指针的概念。巨指针同样具备32位的特性,其结构包括16位的段地址和偏移,能够寻址任何地址。然而,它与远指针的关键差异在于进行了规格化处理。远指针未经规范化,可能导致两个不同的指针(如23B0:0004和23A1:00F4)指向同一物理地址,但其段地址和偏移不一致。巨指针通过特殊的算法确保每次操作后,偏移量始终小于10h,只有最低4位有效,其余部分进位到段地址,以此避免远指针在64K边界时的意外重置问题。操作范围必须限制在64K以内。下面的函数展示了如何将远指针转换为巨指针:



c
void normalize(void far ** p)
{
*p = (void far *)(((long)*p & 0xffff000f) + (((long)*p & 0x0000fff00) << 12));
}

这段代码展示了指针间接赋值的用法,因为函数需要改变指针的值,所以它需要接收一个指向指针的指针作为输入。


值得注意的是,近指针、远指针和巨指针是16位段寻址处理器的产物,主要适用于早期的计算机架构。现代的32位处理器,如80386及更高版本,通常工作在保护模式下,指针是统一的32位,可以直接访问内存地址,远近指针的概念不再适用。但在嵌入式系统领域,如AMD的AM186ED和AM186ER处理器,依然常见,因此理解不同指针的寻址特性仍然是必要的。


若想深入了解这些概念,建议进一步学习微机原理、8086汇编,以及查阅C/C++高级编程相关书籍以深化理解。


扩展资料

巨指针是32位的指针,它其实是规格化的指针,其实它与远指针就差在规格化上面,远指针没有规格化,这样如果两个指针实际上指向同一个物理地址,但是它们的段地址和偏移地址不一样的化,在远程指针看来,它们仍然是不一样的。如23B0:0004和23A1:00F4都指向同一个物理地址23604,但是如果进行指针比较的话,它们两个在远程指针看来是不一样的,但是在巨指针看来却是一样的。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
为什么一些男性喜欢要求伴侣叫自己爸爸? proteus8中怎么放置引脚标号 ...在proteus里不知道用什么表示?有没有什么proteus中专门的中英文对照... 甜蜜家园郑毅铭是什么身份 甜蜜家园第二季郑毅铭喜欢谁 瑞梦喜智能空调床垫适合人群 小孩可以用智能床垫吗 智能床垫适合哪些人用 我父亲今年59岁,有高血压和颈椎病的病史,最近一段时间感觉一躺下就偏... ...刚从医院治疗回来。我想买个枕头给他,不知买怎样的比较好?_百度知 ... 有什么正规的外汇平台吗 股份合作协议违约责任有哪些? 好时公司在中国的发展策略和投资计划是怎样的? 好时在中国的发展策略和市场地位如何? 股份合作协议违约责任怎么写? 合作协议中的违约责任有什么? 合作协议中的违约责任有哪些 合伙协议违约责任条款有哪些? 合作协议中的违约责任从哪几方面入手 破坏领主角色怎么创建 我女朋友经常无意间摔东西,这是习惯问题还是病态呢? 手上的东西不自觉掉落,几次了。还是学生,。最近不知道是不是,考试后... 王者荣耀怎么设置开启技能标签 王者荣耀如何设置开启技能标签 有哪些鉴别波尔多伯爵干红葡萄酒品质的技巧分享? 波尔多葡萄酒口感怎么样?好不好喝-多少钱一瓶 清明上坟有什么忌讳 怎么把自己的收款码打印出来? ANSYS Workbench 12基础教程与实例详解图书目录 ANSYS9.0经典产品基础教程与实例详解目录 微首付购车是什么意思? 清明上坟有什么忌讳吗 一张纸复印两面怎么弄 八里园村位于哪个省哪个市 有关止回阀 昵称亲亲是什么意思? 梦见自己被同学追逮贩卖 梦见我和两个老乡被人贩卖的预兆 弥补以前年度亏损 鸿蒙os系统手机发热耗电快怎么回事? 淄博恒聚纺织有限公司公司简介 全球十大船用发动机哪些品牌值得关注? 发动机哪个牌子的好? 焗过的小龙虾怎么保存新鲜 小龙虾的保存方法 为什么我的手机需要登录认证才能上网啊? 冰冻邮寄来的小龙虾吃不完,能否放急冻室冰冻? 厕所排气扇的气排到哪里 沈阳市沈河区张浩医疗器械经销部招聘信息,沈阳市沈河区张浩医疗器械经销... wps怎么删除大量的多余行列 如何做aso优化方案 确立权重的方法 珺字取名男孩有寓意360个,带珺字男宝名字