From 97e490da344fab205760b8b3c316adb0091baf0f Mon Sep 17 00:00:00 2001 From: 0xAX Date: Wed, 7 Jan 2015 23:06:05 +0600 Subject: [PATCH] Update linux-bootstrap-1.md --- linux-bootstrap-1.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/linux-bootstrap-1.md b/linux-bootstrap-1.md index d1da3fb..643fcd5 100644 --- a/linux-bootstrap-1.md +++ b/linux-bootstrap-1.md @@ -58,16 +58,16 @@ which is 65519 bytes over first megabyte. Since only one megabyte is accessible Ok, now we know about real mode and memory addressing, let's get back to register values after reset. -`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: +`CS` register consists of two parts: the visible segment selector and hidden base address. We know predefined `CS` base and `IP` value, logical address will be: ``` -0x0ffff000:0xfff0 +0xffff0000:0xfff0 ``` -which we can translate to the physical address: +In this way starting address formed by adding the base address to the value in the EIP register: ```python ->>> hex((0x0ffff000 << 4) + 0xfff0) +>>> 0xffff0000 + 0xfff0 '0xfffffff0' ```