In at&t syntax, the instruction Mov (%rax), %eax # at&t syntax or, equivalently in intel syntax Mov eax, dword ptr [rax] I just want to read values that are currently in those registers Rax, rbx, rcx, rdx, rsp Rbp, rsi, rdi and print them out, thats it.
Essentially all x86 chips released in the last decade from amd and intel support this isa Thus (%rax) means to get the value of the pointer currently stored in %rax What does the star decoration do on that Does that further dereference that value (thus (%rax) is itself a pointer) I'm having trouble googling *( assembly syntax This is x64 assembly generated from gcc 4.8 compiling c++ code.
How to access a single register's byte and how to access. And in the similar problem i found here Hard time understanding assembly language it seems that with 260 (%rcx, %rdx) we needed to convert the value to hexadecimal But that didn't work for 9 (%rax, %rdx) How does that lead to address 0x10c to get a value of 0x11?
WATCH