mirror of
https://github.com/pkivolowitz/asm_book.git
synced 2026-06-21 02:06:48 +08:00
explanation of line 7 thank you to 0x3333 for the pull request
This commit is contained in:
parent
5d8d8d0199
commit
cf65bbcf99
1 changed files with 4 additions and 0 deletions
|
|
@ -623,6 +623,10 @@ This difference is OK because the older value of `argv` is preserved in
|
|||
`argv` before the increment, it doesn't matter when the increment is
|
||||
done.
|
||||
|
||||
Why is that value of 8 on line 7? Recall that all addresses in this
|
||||
64 bit ISA are... 8 bytes long. To move our gaze from one pointer to
|
||||
the next within an array of pointers, we must increment by 8.
|
||||
|
||||
The *if* happens on the first line of the C++ but done on the middle
|
||||
line of the assembly language. `cbz` stands for *`C`onditionally
|
||||
`B`ranch if `Z`ero*.
|
||||
|
|
|
|||
Loading…
Reference in a new issue