Anroid中FAR定义指针

本文解释了16位与32位操作系统中指针的不同之处,特别是在DOS实模式下near指针与far指针的定义及寻址范围。near指针仅能访问64K字节,而far指针则可以跨越多个段访问1M字节的数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

为了和以前的16位windows兼容。

以前有far   指针和near指针之分。

在DOS下(实模式)地址是分段的,每一段的长度为64K字节,刚好是16位(二进制的十六位)。
near指针的长度是16位的,所以可指向的地址范围是64K字节,通常说near指针的寻址范围是64K。
far指针的长度是32位,含有一个16位的基地址和16位的偏移量,将基地址乘以16后再与偏移量相加,
(所以实际上far指针是20位的长度。)即可得到far指针的1M字节的偏移量。所以far指针的寻址范
围是1M字节,超过了一个段64K的容量。

typedef png_byte        FAR * FAR * png_bytepp;  指向指针的指针;


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值