Assembly language is the closest programming language to computer hardware.
You study machine instructions, binary representation, basic computer architecture, etc.
You study machine instructions, binary representation, basic computer architecture, etc.
machine instructions, binary representation, basic computer architecture
✔ Specialist skills | Intercultural skills | Communication skills | Critical thinking skills | ✔ Practical and/or problem-solving skills |
Classroom learning and programming exercise
Course schedule | Required learning | |
---|---|---|
Class 1 | introduction | introduction |
Class 2 | Basic syntax in assembly languages: machine instruction, assembler directives, label, comment | Basic syntax in assembly languages: machine instruction, assembler directives, label, comment |
Class 3 | Binary representation of instruction and data: mnemonic, label | Binary representation of instruction and data: mnemonic, label |
Class 4 | Binary representation of instruction and data: two's complement, byte order, alignment | Binary representation of instruction and data: two's complement, byte order, alignment |
Class 5 | CPU, registers, memory, machine instructions, program counter, instruction execution cycle | CPU, registers, memory, machine instructions, program counter, instruction execution cycle |
Class 6 | machine instruction (1): adressing mode, data transfer | machine instruction (1): adressing mode, data transfer |
Class 7 | machine instruction (2): arithmetic operation, logical operation, shift operation | machine instruction (2): arithmetic operation, logical operation, shift operation |
Class 8 | machine instruction (3): jump operation, flag, compare operation | machine instruction (3): jump operation, flag, compare operation |
Class 9 | machine instruction (4): function call, stack, stack layout | machine instruction (4): function call, stack, stack layout |
Class 10 | linkage to C language, function calling convention | linkage to C language, function calling convention |
Class 11 | inline assembler | inline assembler |
Class 12 | binary format, ABI (application binary interface) | binary format, ABI (application binary interface) |
Class 13 | linkage, relocation, symbol table, symbol resolution | linkage, relocation, symbol table, symbol resolution |
Class 14 | privilege instruction, I/O instruction, interruption | privilege instruction, I/O instruction, interruption |
To enhance effective learning, students are encouraged to spend approximately 100 minutes preparing for class and another 100 minutes reviewing class content afterwards (including assignments) for each class.
They should do so by referring to textbooks and other course material.
None
None, slides are available in lecture
mid exam: 30%
programming exercise report: 35%
last exam: 35%
Desirable if you have already took programming 1, and experiments on computer science I
If a limit on the number of students is necessary, the students of computer science department have a priority.