AT&T Syntax
AT&T সিনট্যাক্স
x86-64 assembly লেখার একটা কনভেনশন — source আগে destination পরে, register-এ % প্রিফিক্স, immediate-এ $, size suffix (b/w/l/q)। GNU টুলচেইনের (gcc, gdb, objdump) ডিফল্ট।
also: AT&T syntax
movq %rax, %rbx ; rbx = rax (source আগে, destination পরে)
movl $5, %eax ; eax = 5 (% রেজিস্টার, $ immediate)
movl -4(%rbp), %eax ; disp(base) addressing, () বন্ধনী
Unix-এর মূল assembler ঐতিহ্য (Bell Labs, ১৯৭০-এর দশক) থেকে আসা — x86 জন্মের আগে থেকেই এই কনভেনশন বিদ্যমান ছিল বিভিন্ন architecture-এ। GNU টুলচেইন x86 সমর্থন যোগ করার সময় এই একই ঐতিহ্য অনুসরণ করল, [[intel-syntax|Intel Syntax]] থেকে স্বাধীনভাবে।
Size suffix বাধ্যতামূলক যখন memory operand-এ কোনো register নেই যা size
বলে দেয়: movb/movw/movl/movq (byte/word/long/quad)।
ডিফল্ট টুল: gdb, objdump, GNU as। Intel-এ সুইচ:
(gdb) set disassembly-flavor intel, objdump -M intel।
গুরুত্বপূর্ণ: এটা শুধু টেক্সট-কনভেনশন — একই machine code বাইট,
শুধু ভিন্নভাবে “উচ্চারিত”। movq %rax, %rbx (AT&T) আর mov rbx, rax
([[intel-syntax|Intel Syntax]]) হুবহু একই instruction, একই বাইট।