Level First cycle
Program
Name of the program Theoretical Computer Science
COURSE
Course title Computer Systems
Course code Semester Course status ECTS Contact hours (L+AE+LE)
CS 120 I Mandatory course 5 3+3+0
Lecturer
The course aims to acquaint students with the basic terms and concepts of computer science
and to introduce the basic concepts of digital technology that are necessary for
understanding the operation of a computer as a programmable digital machine. In addition,
Course Goals students will be introduced to the structure of computer systems, the basic concepts of
computer communications, the principles of algorithmic thinking, the methodology of
solving problems using computers, and the basic concepts of advanced programming
languages.
By the end of the course, the students will understand the work of all components of the
computer system, the basic principles of computer operation as an information processing
tool, the basic principles of digital data processing, the organization of data in the computer
memory, the connection between logical algebra and digital techniques, advanced methods
Learning
of Boolean algebra for the analysis and synthesis of more superficial digital structures, the
Outcomes
relationship between hardware and software, the basic concepts related to high-level
programming languages. Therefore, s a result, the student will be prepared to take any of the
upper-level systems classes. Even more important, the student will have learned skills to help
him throughout further education.
COURSE CONTENT
- Hardware structure of modern computers. Organization of data in the computer memory. The basic
concepts of BooleanAlgebra. Bits, data types, and operations.
- The transformation and minimization of Boolean functions using Karnaugh maps. Logical gates.
Combinatorial logical circuits. The synthesis of combinatorial circuits.
- Coder. Decoder. Multiplexer (MUX). Demultiplexer (DMUX). The applications of muxes and demuxes.
Synthesis with muxes and demuxes. Half Adder. Full Adder. The Programmable Logic Array(PLA).Logical
[Link] equations for the finite automata and sequential networks.
- Basic storage elements. R-S Letch. D letch. The sequential logic circuits. Elementary automata (flip-flops).
Memory organization. The Addressability of memory. Registers. Counters.
- The processing unit is a sequential circuit. Machine instructions and machine language. Machine
programming. Assembly Language. Assembly programming.
- The processor types and addressing modes. Input-output connectors and external memory.
- Operating system and system software. The concept of the algorithm. Higher programming languages and
their classification. Introduction to programming in C. Variables and operators. Control structures.
Functions. Testing and Debugging. Pointers and arrays. Recursion. Input-Output in C.
LITERATURE
[1] S. Hutchinson: Using Information Technology - A Practical Introduction to Computers &
Communications, (2000), McGraw-Hill Companies, New York.
[2] Randy H. Katz, Gaetano Borriello:Contemporary Logic Design, 2nd edition, (2004), Prentice Hall.
[3] Ž. Jurić: Logički principi funkcioniranja računarskih sistema”, (2014), PMF Sarajevo.
[4] Željko Jurić, Novica Nosović: Logičke osnove digitalnih i računarskih sistema, (2012), Sarajevo.
[5] N. Nosović: “Osnove digitalnih računara”, ETF Sarajevo, 2003.
[6] Dž. Hasanbegović: “Sinteza logičkih i sekvencijalnih struktura”, ETF Sarajevo, 1979.
STUDENT WORKLOAD (hours in a semester)
Lectures 45 Exercises 45 Individual work 35 Total 125
GRADING REMARKS
Maximum Minimum
Criterion
points points
Midterm exams 45 25
Assignment 10 5
Final exam 45 25
Total 100 55