<p>Learn to Program with Assembly by Jonathan Bartlett (2021) is a great one.</p>
<p>It teaches assembly programming for x86-64 processors using AT&amp;T syntax and the GNU Assembler.  It's a follow up to his 2005 text, Programming from the Ground Up, on the same topic.</p>
<p>I'm trying to learn AT&amp;T syntax assembly as well, and I haven't found an equivalent text published in the last decade.</p>
<p>Good luck</p>

CC BY-SA 4.0
2022-03-19T02:29:08.007Z
2022-03-19T02:29:08.007Z
John Fisher
<p>Could any one suggest me a easy book to learn AT&amp;T syntax of x86 assembly programming so that I can understand the code of xv6 OS better?</p>
<p>Respected Ben. I. had suggested me this <a href="https://en.wikibooks.org/wiki/X86_Assembly" rel="nofollow noreferrer">free book</a>. But this is a wiki book and at places it shows:</p>
<p><a href="https://i.sstatic.net/HLd6F.png" rel="nofollow noreferrer"><img src="https://i.sstatic.net/HLd6F.png" alt="enter image description here" /></a></p>
<p>Since it is a community maintained book? And at places there are prompts of clean up, I guess the book contains everything correct. Because I am a self learner and I do not want to learn anything wrong.</p>
<p>Is there any book easy book written by some author?</p>

CC BY-SA 4.0
2022-03-06T15:25:47.250Z
Is there a reason you want.at&t syntax specifically?  Every debugger and recompiler I'm aware.of.can generate both (it's a setting/flag) and, in any case, once you learn x86 assembly in one, it's not hard to learn the other syntax.  The commands are exactly the same commands, but written out slightly differently.  I only ask because I have been led to understand that there are more resources aimed at beginners using intel syntax.
Ben I.
CC BY-SA 4.0
2022-03-06T15:33:35.840Z
Actually I want to understand the xv6 operating system coding... And the xv6 operating system: https://iitd.github.io/os/2022/xv6.pdf uses the AT&T syntax. That's the main reason. And the os video lectures of the professor here: https://iitd.github.io/os/2022/ on youtube also explains parts of x86 AT&T syntax. So, I thought of considering the AT&T syntax as it would help me understand it better...
Abhishek Ghosh
CC BY-SA 4.0
2022-03-06T15:48:14.690Z
Those are pretty solid reasons.  The commands are 1 to 1, since they're really the same language, so even after you find a good at&t reference, always know that if an explanation is confusing, you can find the corresponding Intel command and find another explanation of the same command :)
Ben I.
CC BY-SA 4.0
2022-03-09T13:57:11.437Z
@BenI., I find the intel syntax utterly confusing (after dabbling in 6505, some VAX 11 under BSD and others; yes, weaned on AT&T syntax).
vonbrand
CC BY-SA 4.0
2022-03-09T21:09:40.823Z
@vonbrand Haha that's amazing! My background is so similar, 6502, but weaned on Intel, and I find at&t basically impossible to read  But I did use my trick when I got confused a few times and look up the corresponding command in AT&T syntax for a second explanation
Ben I.
<resource-request><architecture>
Could any one suggest me an easy book to learn AT&T syntax of x86 assembly programming so that I can understand the code of xv6 better?
# Could any one suggest me an easy book to learn AT&T syntax of x86 assembly programming so that I can understand the code of xv6 better?

(Asked by: username_0 on 2022-03-06)

Could any one suggest me a easy book to learn AT&T syntax of x86 assembly programming so that I can understand the code of xv6 OS better?

Respected Ben. I. had suggested me this [free book](https://en.wikibooks.org/wiki/X86_Assembly). But this is a wiki book and at places it shows:

[![enter image description here](https://i.sstatic.net/HLd6F.png)](https://i.sstatic.net/HLd6F.png)

Since it is a community maintained book? And at places there are prompts of clean up, I guess the book contains everything correct. Because I am a self learner and I do not want to learn anything wrong.

Is there any book easy book written by some author?

**Tags:** resource-request, architecture

> **Comments:**
> **username_1**: Is there a reason you want.at&t syntax specifically?  Every debugger and recompiler I'm aware.of.can generate both (it's a setting/flag) and, in any case, once you learn x86 assembly in one, it's not hard to learn the other syntax.  The commands are exactly the same commands, but written out slightly differently.  I only ask because I have been led to understand that there are more resources aimed at beginners using intel syntax.  
> **username_0**: Actually I want to understand the xv6 operating system coding... And the xv6 operating system: https://iitd.github.io/os/2022/xv6.pdf uses the AT&T syntax. That's the main reason. And the os video lectures of the professor here: https://iitd.github.io/os/2022/ on youtube also explains parts of x86 AT&T syntax. So, I thought of considering the AT&T syntax as it would help me understand it better...  
> **username_1**: Those are pretty solid reasons.  The commands are 1 to 1, since they're really the same language, so even after you find a good at&t reference, always know that if an explanation is confusing, you can find the corresponding Intel command and find another explanation of the same command :)  
> **username_2**: @BenI., I find the intel syntax utterly confusing (after dabbling in 6505, some VAX 11 under BSD and others; yes, weaned on AT&T syntax).  
> **username_1**: @username_2 Haha that's amazing! My background is so similar, 6502, but weaned on Intel, and I find at&t basically impossible to read  But I did use my trick when I got confused a few times and look up the corresponding command in AT&T syntax for a second explanation  

---

## 1 answers

### Answer by username_3 on 2022-03-19. Score: 3 | Accepted answer

Learn to Program with Assembly by Jonathan Bartlett (2021) is a great one.

It teaches assembly programming for x86-64 processors using AT&T syntax and the GNU Assembler. It's a follow up to his 2005 text, Programming from the Ground Up, on the same topic.

I'm trying to learn AT&T syntax assembly as well, and I haven't found an equivalent text published in the last decade.

Good luck


---

