Valhalla Legends Forums Archive | Assembly Language (any cpu) | Segment Override Prefixes

AuthorMessageTime
vile
I know the syntax of it in nasm (ie: mov [cs:si], ax), but I'm not EXACTLY sure what they are. I know they are like filters. But can anyone elaborate on that?

Thanks in advance.
January 26, 2004, 1:39 AM
Skywing
[quote author=vile link=board=7;threadid=4908;start=0#msg41142 date=1075081180]
I know the syntax of it in nasm (ie: mov [cs:si], ax), but I'm not EXACTLY sure what they are. I know they are like filters. But can anyone elaborate on that?

Thanks in advance.
[/quote]
IA32 manuals.

Segments are isolated memory regions.
January 26, 2004, 1:10 PM
vile
No, I didn't ask what segments are. I know what segments are. I'm asking about Segment Override Prefixes. They have to do with segments, yeah. But they aren't segments.
January 27, 2004, 3:09 AM
Skywing
[quote author=vile link=board=7;threadid=4908;start=0#msg41274 date=1075172994]
No, I didn't ask what segments are. I know what segments are. I'm asking about Segment Override Prefixes. They have to do with segments, yeah. But they aren't segments.
[/quote]
They change what segment you're using to access the memory; some instructions have a default segment and sometimes this isn't the one you want to use. For instance, push/pop use ss and movs* copy from ds to es (note that in the case of movs*, you can only change the source segment; the destination segment is fixed to es).
January 27, 2004, 4:23 AM

Search