List of supplementary course material on MicroProcessors and Assembly Language Programming

1. The Instruction Set of 8-bit 6800 MicroProcessor by Motorola (6802, a 6800 with 128 Byte RAM and an internal clock generator is the CPU of popular Training Kits designed, manufactured and donated by TAEK to help students' training)
2. Zip archive of Two-Pass Cross Assembler, Simulator, samples and Assembly Language solutions to some mid-term and final questions for 68xx series CPUs,. 64-bit Windows users can not run these files since they are 16-bit Console applications. You should run these either in DosBox (DOS emulator) or in DOS environment explained in Application Note 1 listed below unless you have a 32-bit physical or virtual environment
3. First and Second midterm solutions of Spring 2012
4. Word document of sample midterm and final exam questions. Assembly Language listings of some of the solutions are included in [3]
5. Scanned pdf file of the MicroProcessors Course notes from a student's notebook
6. Pdf document on PC Assembly Language by Paul A. Carter
7. Pdf presentation from Intel explaining manufacturing process of their 32nm processors
8. Zip archive of x86 Assembly Language Programming Tools (Turbo Assembler, Linker and Debugger with a sample Assembly Language program). 64-bit Windows users can not run these files since they are 16-bit Console applications. You should run these either in DosBox (DOS emulator) or in DOS environment explained in Application Note 1 listed below unless you have a 32-bit physical or virtual environment
9. Power Point Presentation (ppt) file on x86 Assembly Language by Mohammad Sharaf
10. Rar archive of a Cross Assembler, Debugger and Visual Simulator of 8-bit 6502 MicroProcessor by Rockwell
New (Spring 2015)
11. List and links to free tools for the assembler programmer for a variety of platforms and processors
12. AMD64 Architecture Programmer's Manual Volume 1, Volume 2, Volume 3, Volume 4 and Volume 5
13. Introduction to x64 Assembly, an informative document on x64 Assembly Language by Intel
14. Resources on both x86 x64 Assembly Language with FlatAssembler for DOS, Windows and Linux
15. The Go tools for Windows + Assembler, by Jeremy Gordon for both x86 and x64
16. Borland's Turbo Assembler ready to run in full screen in Windows 7/8/8.1 32bit & 64bit (DosBoX'ed ready to use)
17. MASM32, MicroSoft's 32-bit ASM Language Integrated Development Environment (IDE)
18. The Netwide Assembler, NASM, originally developed by Simon Tatham, creator of PuTTY
19. Rewrite of NASM, The Yasm Modular Assembler Project, with a "new" BSD license
Added on 05.05.2015
20. Introduction to x86 Assembly Programming on Linux, OS/X and Windows with MicroSoft Assembler MASM, GNU Assembler GAS and Netwide Assembler NASM
21. Introduction x64 Assembly on GNU/Linux by Martin Hirzel
Application Notes
22. Application note I, Assembly Language Programming (print string using Int 21 from DOS interrupts) on x86
23. Application note II, 2-pass Assemblers for Programming (write text to StdOut using WriteConsoleA from WinApi)
Added on 05.05.2016
24. Sample 32-bit MASM and TASM Assembly language programs to scan and read input and output file names from the command line. They read all the characters from the input file and write to the output file. Both files contains directions on how to Assemble and Link from the command line.
25.
32-bit x86 Turbo Assembly code (term project solution) to detect unidirectional bit errors in 16-bit unicode encoded characters using Berger code.
Added on 09.05.2017
26. Application note III, 32 and 64-bit Assembly language programming using MS Visual Studio, an enhanced Integrated Development Environment (IDE).
27. Application note IV, 64-bit C++ console application with an Assembly function to compute sum of an array passed as an argument with FastCall convention.
28. An Assembly function to classify a vector of n integer features into either class A or B. Note that a return value of 0 corresponds to class A and 1 to class B.
29. Spring 2017 midterm, final and resit exam questions and solutions
Added on 10.08.2018
30. Spring 2018 midterm, final and resit exam questions and solutions
Added on 31.05.2022
31. Spring 2019 midterm, final and resit exam questions and solutions
32. Spring 2020 midterm, final and resit exam test questions and answers
33. Spring 2021 midterm, final and resit exam test questions and answers
34. Spring 2022 midterm, final and resit exam questions and answers
Added on 30.04.2024
35. POPCNT, an instruction to count number of 1's in many microprocessors, is explained in this blog post.