Learn computer architecture and assembly language by building a working model of an 8086 processor from basic principles of computer architecture. Field Programmable Gate Arrays (FPGA) provide flexible digital electronics platforms that can be organized as a CPU, a neural net, or almost any other digital circuit.
By working through the examples in this book and experimenting with the "X86 model," the reader will receive a "hands on" introduction to the following:
- Computer architecture in general
- The X86 family of CPUs in particular
- Assembly language programming
- Input/Output and interrupt programming
- The Verilog Hardware Description Language
- Field Programmable Gate Arrays
How is this book different from many other books on X86 architecture:
- Emphasizes the 8086 machine codes, not just the assembly language
- Shows how an assembler converts source code to machine language.
- Provides experience with interrupt programming
- Describes both 8086 instructions and X86-64 instructions
- Encourages a hands-on introduction to Verilog and FPGAs
- Demonstrates applications with strings and packed decimal arithmetic
- Uses assembly language to monitor and control electronic circuits
- Contains over 150 illustrations to accompany descriptions of digital circuits, Verilog code, and X86 code
- Includes all source code with a free download from GitHub