253 test 1
Test may NOT be "made up" without prior arrangements or VERIFIED EMERGENCY!
Make-up tests will be different, will be given the following morning at 6:30am and require a medical excuse.
Make a CAP!

This guide is not a "promise" of what will be on the test, but is simply an outline of topics that MAY be on the test that I provide to be helpful to you. Other topics not listed may also sneak onto a test from time to time.
Understand that a test is a SAMPLING and can not possibly cover all information from class. The idea, however, is that you must study all the information since you don't know for certain what questions will show up. This is for your benefit as it motivates you to learn more! And finally, to avoid the "you said that topic would/would not be on the test" problem, my new "stock answer" for the question, "will this be on the test?", is now: "I can neither confirm nor deny the presence of that topic on the next test."(ref: US Navy)

READ: Code by Petzold: Ch 1-3,7-9 READ: EMU Tutorials: - HW & Program execution Registers speed sizes: 8 bit, 16 bit 32 bit names special purposes SS , RAM , CPU execution sequence IP & context Speeds clock speed vs clock cycle mHz, gHz micro, nano - Bases & Representation 2, 10, 16 and conversion positive and negative numbers ranges of numbers in n bits signed & unsigned representation binary fractions IEEE 754 - what it is, no details asccii vs utf-8 why? how? - Organization sizes bytes, words, dwords little endian formulas - Defining Storage byte word dword Ram how do we address? number of bits needed to address n bytes of RAM log2 n 2x = n - Moving Data MOV instruction same size no memory to memory includes ptr to ptr mov [edi], [esi] no - mem to mem ambiguous size - use ptr cmp 0, byte ptr[esi] cmp al, [esi] mov does NOT set flags XCHG swaps Registers sizes names general relationship (al, ah, ax, eax, rax) special ip cs ir flags - Arithmetic add sub overflow signed unsigned inc (no carry flag) dec div (ax, ah, al) - Logic AND, OR, XOR, masks clearing bits: AND 0111 1110 will CLEAR first and last bit (zeroes) setting bits: OR 0000 1111 will SET rightmost 4 bits (ones) - Setting , using flags, CMP and jumps ZF SF OF (s) CF (u) test - 'and' cmp - 'sub' - LOOP & LABELS jmps machine code for loop loop uses CX decrement and loop if > 0 conditional jumps use flags je, jz => z flag jb, ja unsigned jg, jl signed - Assembly Language programs How many bytes allocated? How are they represented? How are the bytes organized? little endian - CALL instruction & PROC/ENDP how it works pancakes - Procedures stack arguments saving registers doc - emu8086 Library: Macro vs. Proc Call vs inline expansion print, printn macro gotoxy macro print_num, print_num_uns procedure (AX) ** CAREFUL: ax vs ah and al when printing scan_num (CX) procedure


show bytes in hex segments that can loop and add numbers write a procedure masking what flags are set jmp machine code