MIM3122 PC ARCHITECTURE AND SYSTEM PROGRAMMING
STUDY GUIDE
TOPIC

Intro to PC hardware and computing basics
        -main chips -- 8086, 80286, 80386, 80486, pentium
        -timing of signals, data bus, output ports

PC data formats
        -review of hexadecimal arithmetic
                +postional number systems
                +conversion among them
        -data formats (signed and unsigned integers, ASCII character, floating pt.)

PC arithmetic
        -two's complement arithmetic (binary and hex)

PC architecture
        -registers, stack conventions
        -memory allocation
        -segment addressing, and segment assignment by type
        -"backwords" storage of 16-bit words
        -stack operation

Extensions to original PC architecture: 386, 486 and beyond
        -summary of features of 80X86 family of chips
        -PC family bus evolution
                +8088 bus
                +ISA bus
                +MCA bus
                +EISA bus
                +local bus (VESA, PCI)
        -expanded and extended memory
        -RISC/CISC differences, importance of pipeline, branch prediction

DEBUG

Assembly Language Fundamentals -Data definition
        -Data transfer
        -Arithmetic instructions
        -Addressing modes
        -Program structure (memory models)
        -use of stack with procedures

Assembly and Machine language on the PC
        -the PC assembly process: macro assembler- assemble, link and run
        -MASM
        -the visible computer (TVC) demo
        -translation of assmb. code to machine code
 
Assembly Language Instructions
        -mainly the instructions used in class examples and homework

Disk basics and file handling
        -DOS disk formats-- 360K, 720K, 2.2M, 1.44M
        -BIOS/DOS addressing schemes, conversion
        -subdirectories
        -the boot record parameters
        -bootable disks
        -formatting of disks
        -hard disk particulars
                +disk partitions for hard disks: master boot record, partition tables
                +FDISK: creating primary and extended DOS and other partitions
                +FDISK: creating logical drives within DOS extended partition
        -file directory entry contents
                +impact of attribute byte
                +date/time coding
        -file allocation units-- a.k.a. clusters
                +mapping sectors to clusters (360K,1.44M disk)
                +sub-directories and clusters
        -FAT -- the vital map
                +disk size limits imposed by sector and FAT size
                +12-bit FAT
                +16-bit FAT
                +subdirectories -- directory and FAT entries
        -recovering "erased" files
                +manually through dir and FAT entries
                +through utilities
                +through DOS 5.0 features
 
Video display basics
        -CGA, MDA, EGA, VGA, SVGA modes
        -character mode operation
                +character blocks
                +ASCII/attribute bytes
                +mapping memory locations to character locations on screen
                +attribute byte details
        -graphics mode operation
                +no. of colors vs. resolution tradeoff
                +mapping memory locations to pixels on screen (CGA, EGA, VGA)
                +color palettes (CGA, EGA, VGA palettes)
 
Keyboard basics -evolution of the PC keyboard-- the various designs
        -keyboard operation
                +ASCII/scan codes
                +keyboard buffer
                +auxiliary byte
                +special keys - shift, cntrl, alt, caps lock etc.; key status memory
        -altering normal key functions
                +trapping key strokes-- TSR programs
                +altering key assignments--prompt command and ANSI.SYS

PC operating system: MSDOS
        -DOS Structure
        -Pipes, filters and redirection
        -the functioning of DOS commands--global issues, overview of DOS commands
        -interrupt addressing
        -BIOS interrupt operation
        -DOS interrupt operation