分享
 
 
 

远指针

王朝百科·作者佚名  2010-02-10
窄屏简体版  字體: |||超大  

远(far)指针

远指针不是让编译程序把程序数据段地址作为指针的段地址部分,

而是把指针的段地址与指针的偏移量直接存放在指针内。因此,远指

针是由4 个字节构成。它可以指向内存中的任一目标,可以用于任一

编译模式,尽管仅在紧凑、大和巨模式下远指针才是缺省的数据指针。

因为远指针的段地址在指针内,熟悉80X86 汇编语言的人都知道,这

意味着每次使用远指针时都需要重新装载段寄存器,这显然会降低速

度。

应该注意:尽管远指针可以寻址内存中的任一单元,但它所寻址

的目标也不能超过64K 字节。这是因为,远指针在增量或减量之类的

算术运算时,也只是偏移量部分参与运算,而段地址保持不变。因此,

当远指针增量或减量到超过64K字节段边界时就出错。例如: char far *fp=(char far *)0xb800ffff;

fp++; 在指针加1以后,fp将指向B800:0000,而不是所希望的

C800:0000。

此外,在进行指针比较时,far指针还会引起另外一些问题。far

指针是由偏移量和段地址这样一对16位数来表示的,对于某一实际内

存地址,far指针不是唯一的,例如,far指针1234:0005、1230:0045、

1200:0345、1000:2345、0900:9345等都是代表实际地址12345,这样

会引起许多麻烦。

第一,为了便于与“空”(NULL)指针(0000: 0000)进行比较,当

关系操作符“==”和“!=”用于对far 指针进行比较时,比较的是全

部32位。否则,如果只比较16位偏移量,那么任何偏移量为0 的指针

都将是“空”(NULL)指针,这显然不符合一般使用要求。但在进行这

32位比较时,不是按20位实际地址来比较,而是把段地址和偏移量当

作一个32位无符号长整数来比较。对于上面这个例子,假设这些指针

分别叫作a、b、c、d、e,尽管这5个far 指针指向的都是同一内存单

元,但下列表达式运算的结果却都为“假”,从而得出错误的结论:

if(a==b)....

if(b==c)....

if(c==d)....

if(d==e)....

if(a==c)....

if(a==d)....

第二,当用“>”、“>=”,“<”和“<=”关系操作符对指针进

行比较操作时,比较的仅仅是偏移量部分,即按无符号的16位整数进

行比较。因此,对于上面这个例子,下列表达式运算的结果将都为

“真”,也得出错误的结论:

if(e>d)....

if(d>c)....

if(c>b)....

if(b>a)....

if(e>a)....

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有