flat assembler
Message board for the users of flat assembler.
![]() |
Author |
|
revolution 24 Dec 2007, 22:53
Far: goes a long way.
Near: goes not a long way. But far is only really useful in 16bit and segmented modes. In Windows, and most other 32bit OSes, you only need near because all the segment registers give you the entire 32bit address space to 'near jmp' within. |
|||
![]() |
|
vid 24 Dec 2007, 23:04
And in 64bit mode, segmentation is completely abandoned. C and segmentation doesn't get together very well (ever tried to mess with far*far*, ptrdiff_t, etc?)
|
|||
![]() |
|
revolution 24 Dec 2007, 23:07
vid wrote: And in 64bit mode, segmentation is completely abandoned. |
|||
![]() |
|
vid 24 Dec 2007, 23:18
Quote: Except for GS right? and FS, yeah ![]() but they work quite differently. You have to load limit and access rights "normal way" (from GDT or LDT descriptor) first, and then load base address shadow register directly via MSR (to be able to assign full 64bit address to it). |
|||
![]() |
|
< Last Thread | Next Thread > |
Forum Rules:
|
Copyright © 1999-2025, Tomasz Grysztar. Also on GitHub, YouTube.
Website powered by rwasa.