我正在嵌入式环境中编写 C 代码,我想了解这一点:
#define linear2segofs(addr) (((((unsigned long) (addr)) & x00FFFF00UL) << 8) +\
(((unsigned long) (addr)) & 0x000000FFUL))
当我在数学上尝试它时,它似乎将字节向上移动到 32 位值的上部。
我想了解为什么以及什么是 segofs。
最佳答案
该宏将线性地址拆分为段和偏移量部分。更多信息请参阅here .
关于c - segof 是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29660618/