楼 主
[讨论]ms-dos下能访问到32位物理地址吗?
发表于 2003-09-10 00:00 · 中国 河南 郑州 联通
初级用户
★
积分 117
发帖 5
注册 2003-09-10 00:00
22年会员
UID 9664
性别 男
状态 离线
本人最近要编一个dos下的驱动,请问哪位可以告诉我在dos下怎样实现用汇编访问到32位的物理地址.
第 2 楼
发表于 2003-09-12 00:00 · 新加坡 星和视界(StarHub)宽带
初级用户
★
积分 169
发帖 29
注册 2003-07-09 00:00
23年会员
UID 6654
性别 男
状态 离线
一定要在保护模式下才能访问32位物理地址。
需要dpmi host,watcom c下是dos4g/w,现在也可以用dos32a和cwsdpmi,还有著名的pmode。然后就是flat mode内存访问,定义一个指针指向要访问的内存区域,最简单直接。
djgpp下用cwsdpmi和pmode,但不能直接用指针访问,需要用_far*系列函数访问。
bc下肯定也有自己的dpmi host,但我没有接触过,不太清楚。
在汇编下,我还是建议你算了吧,从dos的实模式下转到保护模式,然后访问指定的内存段,在汇编下的实现比较繁琐。
论坛跳转: