mirror of
https://github.com/MintCN/linux-insides-zh.git
synced 2026-04-25 03:01:26 +08:00
Merge pull request #25 from fuzhli/segmented_address_fix
Segmented address presentation fix
This commit is contained in:
@@ -8,3 +8,4 @@ Thank you to all contributors:
|
||||
* [Chris Costes](https://github.com/ccostes)
|
||||
* [nathansoz](https://github.com/nathansoz)
|
||||
* [RubanDeventhiran](https://github.com/RubanDeventhiran)
|
||||
* [fuzhli](https://github.com/fuzhli)
|
||||
|
||||
@@ -61,13 +61,13 @@ Ok, now we know about real mode and memory addressing, let's get back to registe
|
||||
`CS` register has two parts: the visible segment selector and hidden base address. We know predefined `CS` base and `IP` value, so our logical address will be:
|
||||
|
||||
```
|
||||
0xffff0000:0xfff0
|
||||
0x0ffff000:0xfff0
|
||||
```
|
||||
|
||||
which we can translate to the physical address:
|
||||
|
||||
```python
|
||||
>>> hex((0xffff000 << 4) + 0xfff0)
|
||||
>>> hex((0x0ffff000 << 4) + 0xfff0)
|
||||
'0xfffffff0'
|
||||
```
|
||||
|
||||
|
||||
Reference in New Issue
Block a user