使用absolute指示字已经搞定了嘛!
刚去查了一下:
---------------------
⒉Absolute子句
声明变量时还可以带一个可选的Absolute子句,用于指定变量的值在内存中存贮的绝对位置。Absolute
子句的语法如下:
Absolute 无符号整型:无符号整型
这个指示字后可以跟一个段值和一个偏移量,如:
Var CrtMode:Byte Absolute $0040:$0049;
上例中,声明了一个BYTE类型的变量CrtMode,这个指示字后第一个常数是段值,第二个常数是偏移量,
段和偏移量只能在$0000至$FFFF之间。
注意:这种形式不能用于WINDOWS的保护模式下,因为WINDOWS不允许您的应用程序访问程序外的内存区域。
直接写入内存地址会导致一个GPF错误,实际上,在WINDOWS中,一般是声明一个另一变量,然后在这个子
句中指定变量的值的存贮地址跟该变量相同,例如:
Var Str:String;
StrLen:Byte Absolute Str;
上例中,先声明了String类型的变量Str,然后声明了一个Byte类型的变量Strlen,Absolute子句指定变量
StrLen的地址跟变量Str的地址相同。