mirror of
https://github.com/0xAX/linux-insides.git
synced 2024-12-22 14:48:08 +00:00
Update linux-bootstrap-1.md
This commit is contained in:
parent
ff558bcccd
commit
cdc7d9421c
@ -64,7 +64,7 @@ which is `65520` bytes past the first megabyte. Since only one megabyte is acces
|
|||||||
|
|
||||||
Ok, now we know a little bit about real mode and its memory addressing. Let's get back to discussing register values after reset.
|
Ok, now we know a little bit about real mode and its memory addressing. Let's get back to discussing register values after reset.
|
||||||
|
|
||||||
The `CS` register consists of two parts: the visible segment selector and the hidden base address. While the base address is normally formed by multiplying the segment selector value by 16, during a hardware reset the segment selector in the CS register is loaded with `0xf000` and the base address is loaded with `0xffff0000`. The processor uses this special base address until `CS` changes.
|
The `CS` register consists of two parts: the visible segment selector and the hidden base address. In real-address mode, the base address is normally formed by shifting the 16-bit segment selector value 4 bits to the left to produce a 20-bit base address. However, during a hardware reset the segment selector in the CS register is loaded with `0xf000` and the base address is loaded with `0xffff0000`. The processor uses this special base address until `CS` changes.
|
||||||
|
|
||||||
The starting address is formed by adding the base address to the value in the EIP register:
|
The starting address is formed by adding the base address to the value in the EIP register:
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user