wk 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
27 29 31 | -- 05 07 | 10 12 14 | 17 19 21 | 24 26 28 | 01 03 -- | 08 10 12 | 15 17 19 | 22 24 26 | 29 31 02 | 05 07 09 | 12 14 16 | 19 20 -- | 26 28 30 | 03 05 07
01 02 03 xx 04 05 06 07 08 09 10 11 12 13 14 15 16 xx 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 xx 37 38 39 40 41 42
Part I
a. Class Intro, HW and Program Execution
b. Number Bases: Unsigned Numbers in Base 2,8,10, 16
c. Signed Integers and IEEE 754 Floating Point
d. Character Data: ASCII, Unicode and UTF
u. MicroControllers & Microsim
e. Using emu8086
f. Instruction Codes, List Files
g. Organization of CPU Registers and Memory
h. Assembly Language Intro: basic instructions, flags
assembly language intro
arithmetic and logic instructions what is assembly & why the asembly
process mov flags (C Z S O) add, sub,cmp, and, test, or, xor mul, imul, div, idiv inc, dec, not, neg
truth tables
XCHG, AND, OR, XOR, NOT
Masks: (and, or, set, clear) & Architecture and, or / clear, set masks xor
encrypt, decrypt, clear fast
i. Flags, Compares, Jumps and Loops: Flow Control / Overflow!
j. Procedure Calls, Stack and Macros
Procedures
Stacks
emu: procedures
emu: the stack MACRO simply expanded inline CALL IP points to NEXT instruction
past Call IP Pushed on stack IP adjusted by offset which is included in instruction Execute Proc Ret pops stack into
IP Isolate functionality Save and restore registers unless returning value pusha, popa
k. Addressing Modes
16 bits => 1MB ?? magic? ea (effective address) = Segment x 16 + IP cs = 0700, ip = 010f ea = 07000 +010f 0710f there are
16 64k segments in the 1 megabyte address space of the 8086,
emu: mov & memory access
∴ Test1 - Mid Term Exam: M() & W()
Part II
l. Pointers and Arrays
m. Maze Intro
n. Looping thru an Array of Bytes and Printing: Maze
o. Interrupts to Read and Write
p. DIV, MUL Use Multiple Registers | Magic?
q. Mixed Code Intro
r. Mixed Code: C++ and ASM
s. Mixed C with ASM
t. emu8086 MicroController: Devices
v. Architecture I, II, III
∴ Test 2 - Final Exam: Wednesdy at 8am and 10am