About 50 results
Open links in new tab
  1. x86 64 - Why is the %rax register used in the assembly for this ...

    Dec 9, 2020 · @RossRidge given %rax is the go-to register for storing return values, seeing it used in another way is surprising to me. It means that reading the disassembled code requires us to mentally …

  2. How to read registers: RAX, RBX, RCX, RDX, RSP. RBP, RSI, RDI in C or ...

    Dec 13, 2013 · @DavidHeffernan: 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.

  3. What is the difference between "mov (%rax),%eax" and "mov …

    Dec 20, 2016 · In AT&T syntax, the instruction: mov (%rax), %eax # AT&T syntax or, equivalently in Intel syntax: mov eax, DWORD PTR [rax] ; Intel syntax dereferences the memory address stored in rax, …

  4. assembly - How is "rax" different from "eax"? - Stack Overflow

    Jul 7, 2017 · The registers starting with r as in rax, rbx, etc, are the 64-bit registers introduced with the AMD64 extension to the existing 32-bit x86 ISA. That ISA extension was subsequently adopted by …

  5. assembly - What does 'callq * (%rax)' mean? - Stack Overflow

    Jul 10, 2019 · 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)? …

  6. What does call * (%rax, %rcx,8) mean in a loop? Why do RAX and RCX ...

    Dec 11, 2022 · RAX and RCX are call-clobbered so it's normal they don't keep their value; notice how their values before call come from an LEA and a load from a local on the stack. (What registers are …

  7. Why "mov rcx, rax" is required when calling printf in x64 assembler?

    Aug 29, 2017 · At the beginning I called printf without "mov rcx, rax", which ended up with access violation. Getting all frustrated I just wrote in C++ a call to printf and looked in the disassembler. …

  8. What does the R stand for in RAX, RBX, RCX, RDX, RSI, RDI, RBP, RSP?

    • RDX:RAX register pair representing a 128-bit operand See the question and answer for x86_64 registers rax/eax/ax/al overwriting full register contents as well as Why do most x64 instructions zero …

  9. assembly - How do AX, AH, AL map onto EAX? - Stack Overflow

    RAX is the full 64-bit value, with EAX and its sub-components mapped to the lower 32 bits. The upper half of 64-bit registers is only accessible in 64-bit mode, unlike 32-bit registers which can be used in …

  10. What are the names of the new X86_64 processors registers?

    Nov 18, 2009 · The old 32-bit registers have been extended to 64 bits, the r registers (rax, rbx, rsp and so on). In addition, there's some extra general purpose registers r8 through r15 which can also be …