Mình có đọc bài viết về cách tối ưu hóa code C/C++ thì có đoạn là
Code:
int a, b, c, d, e;
e = a*b + a*c;
Trình biên dịch phát sinh mã hợp ngữ như sau:
mov eax, dword ptr [a]
imul eax, dword ptr [b]
mov ecx, dword ptr [a]
imul ecx, dword ptr [c]
add eax, ecx
mov dword ptr [e], eax
mình cũng có học qua môn CTMT và HN nên cũng hiểu sơ sơ cách làm việc ở mức HN
Mình muốn hỏi là làm cách nào để biết trình biên dịch C dịch ra mã ASM như thế nào(tức là dùng tool gì để xem nó convert qua thế nào(trên cả windows và linux)... )?
Ngoài ra các lệnh như printf ... thì trình biên dịch làm như thế nào.