"Anchor Text","URL"
"Demystifying programs that create programs","https://briancallahan.net/blog/20210407.html"
"Part 1: A disassembler","https://briancallahan.net/blog/20210407.html"
"Part 2: Starting an assembler","https://briancallahan.net/blog/20210408.html"
"Part 3: Globals, passes, and error handling","https://briancallahan.net/blog/20210409.html"
"Part 4: Parsing","https://briancallahan.net/blog/20210410.html"
"Part 5: Processing our first opcode","https://briancallahan.net/blog/20210411.html"
"Part 6: Processing more opcodes","https://briancallahan.net/blog/20210412.html"
"Part 7: Further opcode processing","https://briancallahan.net/blog/20210413.html"
"Part 8: Finishing opcode processing","https://briancallahan.net/blog/20210414.html"
"Source","https://github.com/ibara/d80"
"Assembly Programming and Computer Architecture for Software Engineers","https://brianrhall.com/book/"
"Performance-Aware Programming Series","https://www.computerenhance.com/p/table-of-contents"
"Instruction Decoding on the 8086","https://www.computerenhance.com/p/instruction-decoding-on-the-8086"
"Decoding Multiple Instructions and Suffixes","https://www.computerenhance.com/p/decoding-multiple-instructions-and"
"Opcode Patterns in 8086 Arithmetic","https://www.computerenhance.com/p/opcode-patterns-in-8086-arithmetic"
"8086 Decoder Code Review","https://www.computerenhance.com/p/8086-decoder-code-review"
"Using the Reference Decoder as a Shared Library","https://www.computerenhance.com/p/using-the-reference-decoder-as-a"
"Simulating Non-memory MOVs","https://www.computerenhance.com/p/simulating-non-memory-movs"
"Simulating ADD, SUB, and CMP","https://www.computerenhance.com/p/simulating-add-jmp-and-cmp"
"Simulating Conditional Jumps",""
"Simulating Memory",""
"Simulating Real Programs",""
"Other Common Instructions",""
"The Stack",""
"From 8086 to x64",""
"8086 Simulation Code Review",""
"Assemblers and Loaders (1993)","https://www.davidsalomon.name/assem.advertis/AssemAd.html"
"Affine Notes","https://app.affine.pro/workspace/3fc9d28f-0ee6-4e4c-9675-79230706f341/koifv--tIzioAWQsC3OY0?mode=edgeless"
"An Introduction to Assembly Programming with RISC-V","https://riscv-programming.org/book/riscv-book.html"
"asm-lessons","https://github.com/FFmpeg/asm-lessons"
"20 part Linker Essay (on LWN)","https://lwn.net/Articles/276782/"
"Linkers and Loaders (2000)","https://linker.iecc.com"
"Beginning x64 Assembly Programming: From Novice to AVX Professional","https://link.springer.com/book/10.1007/978-1-4842-5076-1"
"Zen of Assembly Language","https://www.jagregory.com/abrash-zen-of-asm/"
"Let's Learn x86-64 Assembly!","https://gpfault.net/posts/asm-tut-0.txt.html"
"Part 0 - Setup and First Steps","https://gpfault.net/posts/asm-tut-0.txt.html"
"Part 1 - Metaprogramming in Flat Assembler","https://gpfault.net/posts/asm-tut-1.txt.html"
"Part 2 - We're Writing a Virtual Machine","https://gpfault.net/posts/asm-tut-2.txt.html"
"Part 3 - Arithmetic and Logic","https://gpfault.net/posts/asm-tut-3.txt.html"
"Demystifying Debuggers, Part 2: The Anatomy Of A Running Program","https://www.rfleury.com/p/demystifying-debuggers-part-2-the"
"Zydis","https://github.com/zyantific/zydis"
"ZASM (Zydis frontend, not to be confused with Z80 assembler...)","https://github.com/zyantific/zasm"
"Netwide Assembler","https://www.nasm.us"
"EuroAssembler","https://euroassembler.eu/eadoc/"
"DynASM","https://github.com/Esvandiary/DynASM"
"AssemblyLine","https://github.com/0xADE1A1DE/AssemblyLine"
"AsmJit","https://github.com/asmjit"
"AsmTK","https://github.com/asmjit/asmtk"
"VASM","http://sun.hasenbraten.de/vasm/"
"FASM","https://flatassembler.net"
"YASM (Rewrite (on some) of Netwide in C)","https://yasm.tortall.net"
"Design","https://www.tortall.net/projects/yasm/reference/design/design.pdf"
"User Manual","https://www.tortall.net/projects/yasm/manual/manual.pdf"
"TASM","https://github.com/qb40/tasm"
"HLA","https://plantation-productions.com/Webster/HighLevelAsm/index.html"
"libasm","https://github.com/tgtakaoka/libasm"
"xbyak","https://github.com/herumi/xbyak"
"Keystone assembler framework","https://github.com/keystone-engine/keystone"
"MASM","https://github.com/qb40/masm"
"GAS","https://wiki.osdev.org/GAS"
"LIEF","https://github.com/lief-project/LIEF"
"PE Format","https://learn.microsoft.com/en-us/windows/win32/debug/pe-format?redirectedfrom=MSDN"
"ELF","https://wiki.osdev.org/ELF"
"Mach-O","https://github.com/aidansteele/osx-abi-macho-file-format-reference/blob/master/Mach-O_File_Format.pdf"
"SBCL: the ultimate assembly code breadboard","https://pvk.ca/Blog/2014/03/15/sbcl-the-ultimate-assembly-code-breadboard/"
"mschwartz's assembly tutorial","https://github.com/mschwartz/assembly-tutorial"
"CppCon 2018: Matt Godbolt “The Bits Between the Bits: How We Get to main()”","https://youtu.be/dOfucXtyEsU"
"Learning Assembly YT Playlist","https://www.youtube.com/playlist?list=PLHJns8WZXCdvESvdr1BRjo4RHiR1Ylhw9"
"OSdev Entry","https://wiki.osdev.org/Assembly"