Logo ČVUT
Loading...
CZECH TECHNICAL UNIVERSITY IN PRAGUE
STUDY PLANS
2011/2012

Machine Code and Data

The course is not on the list Without time-table
Code Completion Credits Range
XE36SKD Z,ZK 4 2+2s
The course is a substitute for:
Machine Code and Data (X36SKD)
Lecturer:
Neurčen (gar.)
Tutor:
Neurčen (gar.)
Supervisor:
Department of Computer Science and Engineering
Synopsis:

The objective of the course is to teach the students the basic operations of a computer, with emphasis on the relationships between the instruction set, architecture, and low-level (assembly) programming. Lectures present a programming model of the computer using building blocks such as registers, ALU, and memory. In the seminars, students will learn the assembly languages of at least two particular processors and practice them on simulators as well as actual microcomputers.

Requirements:

Active participation in the labs is required for obtaining the credits. 1 test.

Details can be found at

http://service.felk.cvut.cz/courses/XE36SKD

Syllabus of lectures:

1. Introduction, von Neumann and Harvard computer architectures.

2. Number systems in computers, operations with numbers, text representations.

3. Representing decimal numbers: fixed point, floating point, IEEE-754

4. Instruction set architectures: registers, accumulator, stack-oriented

5. Basic parts of a simple von-Neumann computer

6. Basic cycle of a simple computer

7. Register and stack architectures

8. Instruction types and structures, addressing modes

9. Symbolic expression of instructions and addressing modes

10. Assembly languages for RISC and CISC processors

11. Assembler, directives, absolute/relative compilation, segments

12. Interrupts, I/O instructions

13. Memory subsystem, memory management

14. Assembler vs. higher-level languages

Syllabus of tutorials:

The labs take place in the department's laboratories. Students will use 8-bit AVR microcomputers and the AVR Studio development system. The test covers topics from lectures as well as seminars and labs.

1.Seminar: Introduction, credit and exam requirements. Number systems: binary, octal, hexadecimal; conversions.

2.Seminar: Fixed-point and floating-point arithmetic. Problems with rounding, normalization.

3.Seminar: AVR microcomputer architecture, instruction set, simple examples.

4.Lab: TEST. Introduction to AVR Studio: Writing, compiling and debugging a simple program.

5.Lab: Experiments with data transfer and ALU instructions.

6.Lab: Experiments with memory operations, arrays, indexing, tables.

7.Lab: Experiments with subroutines, parameter passing, stack.

8.Lab: Project - controlling a display.

9.Lab: Project - A/D converter, interrupts.

10.Lab: Complex project.

11.Lab: Analysis of a program compiled from a high-level language.

12.Lab: Accumulator-oriented instruction set, simple programs for the 8051 microcontroller.

13.Lab: Floating-point operations in x86 microprocessors.

14.Lab: Credits

Study Objective:
Study materials:

1. Slavik, P.: Machine Oriented Languages, Skriptum ČVUT Praha, 2003.

2. Váňa, V.: Mikrokontroléry ATMEL AVR - popis procesoru a instrukční soubor, BEN - tech. literatura, Praha, 2003

3. Váňa, V.: Mikrokontroléry ATMEL AVR - assembler, BEN - tech. literatura, Praha, 2003

4. AVR 8-bit Instruction Set. Technical manual, ATMEL Corporation, 2002. http://www.atmel.com

Note:
Further information:
No time-table has been prepared for this course
The course is a part of the following study plans:
Generated on 2012-7-9
For updated information see http://bilakniha.cvut.cz/en/predmet11856604.html