assemblytutorials
assemblytutorials copied to clipboard
This project was put together to teach myself NASM x86 assembly language on linux.
```nasm ;------------------------------------------ ; void sprint(String message) ; String printing function sprint: push edx push ecx push ebx push eax call slen mov edx, eax pop eax mov ecx, eax mov...
Line 1092, which is Lesson 9 of the page, had a small mistake, stating `EBX will be loaded with the file we want to write to – in this case...
``` sprintLF: call sprint push eax ; push eax onto the stack to preserve it while we use the eax register in this function mov eax, 0Ah ; move 0Ah...
Hi. I've fixed what is a presumed doc/ comments typo in lesson 9, as we would want to read from `STDIN` and not write to it. Thank you.
In the `atoi` subroutine, register `edx` isn't getting modified, so there's no reason to save it in the stack
Terminate "msg" in lessons 3 and 4 with a NUL (0 byte) instead of relying on NUL padding inserted by the assembler to align things properly.
As the system call opecode for 32-bit and 64-bit linux are different, may be it is helpful to add explicit clarification that the code in tutorial is of 32 bit,...
The original url https://chromium.googlesource.com/chromiumos/docs/+/HEAD/constants/syscalls.md#x86-32_bit now points to page that says "This resource has migrated ..."