why using 8 byte register to carry 8 byte type but not using 4 byte register for 4 byte type
This is the code snippet that i am looking #include <cstdint> int main() { unsigned int i = 0x11111111; unsigned int j = 0xFFFFFFFF; uint64_t k = 0xFFFFFFFF11111111; } 0000000140001000 sub rsp,18h 0000000140001004 mov dword ptr [rsp],11111111h 000000014000100B mov dword ptr [rsp+4],0FFFFFFFFh 0000000140001013 mov rax,0FFFFFFFF11111111h 000000014000101D mov qword ptr [rsp+8],rax 0000000140001022 xor eax,eax 0000000140001024 add… Read More why using 8 byte register to carry 8 byte type but not using 4 byte register for 4 byte type