阅读:990回复:2
长指针...
DOS环境下有如下代码:
uchar * ptr; ptr=(uchar far *)MK_FP(0xe000,0x0000); *ptr=35; printf("%d\n",*prt); 运行结果是打印出了35,但不懂上面那几行代码是何意?长指针是写到系统内存还是写到扩展卡上的内存?为何不用普通指针? 上面的那个长指针若换成普通物理地址会是多少呢? |
|
|
沙发#
发布于:2004-02-19 12:33
FLAT模式下,一般不用FAR了,以前是为了实模式下的,段切换,不知道AMD64下,是否又会有FAR指针了??
|
|
|
板凳#
发布于:2004-02-19 12:36
dos是在实模式下,指针指向的是E000:0000,如果是实模式就是EOOOO地址,在bios中
|
|