Summary of chapters 1 to 4

Download Report

Transcript Summary of chapters 1 to 4

Chapter 1
• Computer architecture
– Memory, register, data format, instruction (format and set),
addressing mode, I/O
– Sequential, parallel, pipeline, dual or multi core.
• Languages: machine, assembly, high
• System software
– OS, assembler/linker/loader, compiler, editor, …
• SIC and SIC/XE architecture
– Addressing modes
• Relations among different components of computer
– Hardware and software
– Different software
Assembler
•
Functions
–
Basic
•
•
–
Extended
•
•
•
•
Program relocation
Different instruction formats, addressing modes.
Literals, EQU, Expression, Blocks, Control Sections. # and = differences.
Two passes:
–
Pass one
•
•
•
•
–
Assign addresses to all statements in source code
Enter names of symbols (labels/literals/blocks/Control Sections) into SYMTAB, LITTAB, ESTAB
Save values (addresses, lengths) assigned to symbols for use in pass two
Process directives
Pass two
•
•
•
•
•
Mnemonic  Opcode
Labels  Addresses
Translate instructions
Convert symbols to addresses.
Generate values defined by BYTE and WORD and compute expressions to values.
Write object code to object program including Define, Refer, and Modification records.
Data structures
–
–
Tables: OPTABLE, SYMTAB, LITTAB, ESTAB, … , hash/or linked list
Location counter: LOCCTR, PROGADDR, CSADDR, …
•
Directives:
•
Object records:
–
–
•
•
•
BYTE, WORD, RESB, RESW, BASE, EQU, USE, LTORG, CSEC, EXTDEF, EXTREF,
Header, End, Text, Modification, Define, Refer, …
Relations among source program, (intermediate file), object code, and object program.
Relations among assembler, loader, and linker.
Different Addressing models
Linker/Loader Summary
• Loader, Linker, Linking loader,
– Linkage editor, simple loader, dynamic linking, absolute loader,
bootstrap loader.
• Functions
– Pass 1: Assign addresses to external symbols
– Pass 2: loading, relocation, linking
– Important: how relocation and linking is implemented.
•
•
•
•
Data Structures: ESTAB, PROGADDR, CSADDR, EXECADDR
Library search and linking
Linking options
Dynamic linking
Micro Processor Summary
• Basic functions
– Definitions and expansions
• Features
– Labels, nested definitions, recursive invocations.
– Conditional macro processing.
• IF…ENDIF, WHILE…ENDW, macro-time variables and instructions
– Keyword parameters
• Data structures and algorithms
– NAMTAB, DEFTAB, ARGTAB
– For recursive invocation, STACK.
• Relation between macro processors and assemblers
Exam
• Types:
–
–
–
–
–
•
Concepts and functions
Identify features
True/false
Write program and read program
Generate object codes for some instructions, particularly, different addressing
modes
Focus
–
–
–
–
Which belong to hardware, software, or both
Functions of assembler, loader/linker, and macro processor
Data structures and algorithms for them.
Relationship among different components of computer systems/software
including assembler, loader/linker, macro-processor, and OS.
– Difference between some concepts/terms/functions
– Advantages and disadvantages of some functions/methods.