This note covers the following topics: Introduction to Computer Organization,
Sample 68000 Addressing Modes, Introduction to Input/Output, Memory
Mapped I/O, Stacks and Stack Operations, Stack Related Instructions,
Recursive/Re-entrant subroutines, Utilizing The Stack for Local Subroutine
Storage, Interrupts & Exceptions,
Interrupt-Driven I/O, Vectored Interrupts, PIT I/O and Timer Interrupt Examples,
68000 Binary Coded Decimal (BCD) And Multiple-Precision Arithmetic Support , Reduced Instruction Set Computer, Basic concepts of CPU organization.
The purpose of
this book is to give the reader a better understanding of how computers really
work at a lower level than in programming languages like Pascal. By gaining a
deeper understanding of how computers work, the reader can often be much more
productive developing software in higher level languages such as C and C++.
Learning to program in assembly language is an excellent way to achieve this
goal.
This PDF book covers
the following topics related to MIPS Assembly Language Programming : The MIPS
Architecture, Pseudocode, Number Systems, PCSpim The MIPS Simulator, Algorithm
Development, Reentrant Functions, Exception Processing, A Pipelined
Implementation, Embedded Processors.
Author(s): Computer Science
Department, California State University, Chico, California
This page covers the following topics related to ARM
assembly language :ISA varieties, ARM assembly
basics, A simple program: Adding numbers, Another example: Hailstone sequence,
Another example: Adding digits, Summary of instructions so far, Condition codes,
Basic memory instructions, Addressing modes, Initializing memory,
Multiple-register memory instructions.
The contents include:
Before we begin, First program, NASM syntax, Basic CPU instructions, Debugging with GDB,
First program linked with a C library, FPU, File operations, MMX, SSE, RDTS, Inline assembler,
Introduction,Registers, Memory.
This note explains the
following topics: Introduction to Linux Assembly Language, x86 architecture,
64-bit x86 Assembly, ARM Assembly language, ARM Thumb, 8-bit 6502 or 16-bit
65c816 Programming, Video Game Programming and Assembly Code Optimization.