简体   繁体   中英

DP / DF pointers in assembly

I'm reviewing some books and notes about assembly language and found two types of pointers, DP (define pointer) and DF (define far pointer), but there is no more information available, just a brief 1 line example on how to declare one but not how to use it. For example:

myByte        DB  0

myPointer     DP  0

myFarPointer  DF  0

And that's all that show my books and Google takes me to places that show the same declaration but not how to use them.

Anybody has a small sample code or a resource (url, txt, pdf, anything) that would help me to understand how they work? I already use segments/offsets and a variety of addressing forms, but want something about DP and DF.

It defines 48 bits: 16 for the segment selector and 32 for the offset in the segment. My teacher explained and gave an example of dp (define pointer) (and there's also df - define far pointer that is the same).

The example is 32 bit protected mode related: MEM48 DP 11101100..00b ;(111 is 7, TI = 0, CPL = 11, 00.00 is 32 zeroes for the offset ; in segment). CALL Mem48

This is an example of a call gate present in GDT[7].

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM