diff options
author | Kartik Agaram <vc@akkartik.com> | 2019-05-27 00:07:00 -0700 |
---|---|---|
committer | Kartik Agaram <vc@akkartik.com> | 2019-05-27 00:07:00 -0700 |
commit | 85225a11bfa43e69109b5d1c5cf479467c118f86 (patch) | |
tree | 54d26db4782327737b15f6676bee52b012a08e6d | |
parent | 9267f7b3c765603edcd6171de0ebfb649e0b0d04 (diff) | |
download | mu-85225a11bfa43e69109b5d1c5cf479467c118f86.tar.gz |
5225
-rw-r--r-- | subx/Readme.md | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/subx/Readme.md b/subx/Readme.md index b8994563..099ddfde 100644 --- a/subx/Readme.md +++ b/subx/Readme.md @@ -155,19 +155,19 @@ _addressing mode_. This is a 2-bit argument that can take 4 possible values, and it determines what other arguments are required, and how to interpret them. -* If `/mod` is `3`: the operand is the register described by the 3-bit `/rm32` - argument similarly to `/r32` above. +* If `/mod` is `3`: the operand is in the register described by the 3-bit + `/rm32` argument similarly to `/r32` above. -* If `/mod` is `0`: the operand is the address provided in the register +* If `/mod` is `0`: the operand is in the address provided in the register described by `/rm32`. That's `*rm32` in C syntax. -* If `/mod` is `1`: the operand is the address provided by adding the register - in `/rm32` with the (1-byte) displacement. That's `*(rm32 + disp8)` in C - syntax. +* If `/mod` is `1`: the operand is in the address provided by adding the + register in `/rm32` with the (1-byte) displacement. That's `*(rm32 + disp8)` + in C syntax. -* If `/mod` is `2`: the operand is the address provided by adding the register - in `/rm32` with the (4-byte) displacement. That's `*(/rm32 + disp32)` in C - syntax. +* If `/mod` is `2`: the operand is in the address provided by adding the + register in `/rm32` with the (4-byte) displacement. That's `*(/rm32 + + disp32)` in C syntax. In the last three cases, one exception occurs when the `/rm32` argument contains `4`. Rather than encoding register `ESP`, it means the address is |