TIP: Click on subject to list as thread! ANSI
echo: 80xxx
to: CAMERON CLARK
from: BRIAN MCCLOUD
date: 1997-07-05 20:46:00
subject: Re: encoding instuction [

BM> The operand-size override prefix is 66h, and the address-size override 
pref
BM> is 67h.  These reverse 16/32 bit operands and addresses, respectively.  
n
BM> Use16 segment, the default is 16 for both, and in a Use32 segment the 
defau
BM> is 32 bit operands/addresses.
BM> For 32-bit indirect memory operands, the r/m bits in most cases mean [reg 
{
BM> disp}], except for 100 which means a SIB is needed, and mod=00, r/m=101 
mea
BM> DS:disp32.  For the reg bits, the extended registers use the same codes 
s
BM> their subregisters would.
CC>    You lost me on the Use16/32 segments. I don't know what signifies when
CC>    to use the 16 bit encoding of the ModRegR/M byte, and when to use the
CC>    32 bit encoding. I don't know what a Use16/32 segment is.
The ModRegR/m byte does not specify whether the segment is Use16 or Use32...
The segment declarations determine this, and the assembler would probably 
ake
use of the address-size and/or operand-size overrides when calling one type 
f
segment from the other type.  I must admit I haven't done much with this, but
the microprocessor must have some way to tell whether it's running a Use16 or
a Use32 segment.
((Cloud))
MauveCloud@juno.com
 * OLX 2.2 * Is there death after life?
--- PCBoard (R) v15.3/M 10
---------------
* Origin: Next time, Dial The Wrong Number! (209) 943-1880 (1:208/205)

SOURCE: echomail via exec-pc

Email questions or comments to sysop@ipingthereforeiam.com
All parts of this website painstakingly hand-crafted in the U.S.A.!
IPTIA BBS/MUD/Terminal/Game Server List, © 2025 IPTIA Consulting™.