Course detail
Computers and Programming 1
FEKT-BPC-PC1MAcad. year: 2025/2026
Basic terminology of computer technology, computer architecture, personal computer peripherals, computer bus, networks, communication protocols, Internet services, information education. Specifics of operational systems, evolution of the processor, its internal structure and the types of architecture, instruction set. Number systems and conversions between them, interpretation of numbers. Algorithms, write algorithms, optimization algorithms with respect to computational unit. Branching program cycle, conditions, jumps, recursion. Program parameters.
Language of instruction
Number of ECTS credits
Mode of study
Guarantor
Department
Entry knowledge
Rules for evaluation and completion of the course
Aims
1. Student knows from what component consists of personal computer, is able to identify and understand their specifications.
2. He can name the most popular operating systems and has an overview of their differences.
3. Can a name commonly used wireless network.
4. Can explain the difference between Harvard and Von Neumann processor structure.
5. It can convert numbers from one number system.
6. Can explain the difference between processor and microcontroller.
7. Can name common microcontroller peripherals.
8. Can explain the notions instruction and program counter.
9. He can create a flowchart algorithm.
Study aids
Prerequisites and corequisites
Basic literature
Kernighan B.W., Ritchie D. Programovací jazyk C, Computer Press, 2008, ISBN 80-251-0897-X (CS)
Ličev, L., Morkes, D. Procesory - architektura, funkce, použití. Computer Press, ISBN: 80-7226-172-X (CS)
PROKOP, Jiří. Algoritmy v jazyku C a C++: praktický průvodce. Průvodce (Grada). Praha: Grada, 2009. ISBN 978-80-247-2751-6. (CS)
Recommended reading
Classification of course in study plans
Type of course unit
Lecture
Teacher / Lecturer
Syllabus
- Introduction to the subject, information systems used at FEEC/BUT and their corresponding user accounts. Rules and guidelines of the FEKT/VUT computer network.
- Number systems, conversions between number systems. Representation of negative numbers. Arithmetic operations in the binary system. Representation of decimal numbers, standard IEEE 754. Fractional representation of decimal numbers, rounding, character representation, character sets.
- Processor development and its architecture, processor core, ALU, memory, Von Neumann and Harvard processor architecture, machine instruction, instruction file, interrupt system.
- Algorithm, algorithm notation, flowcharts, program branching, cycles, conditions, jumps, recursive notation
- PC architecture, basic types, computer peripherals, computer development
- Programming and markup languages. Division of programming languages. Structured and object-oriented programming.
- Operating system I. - role of the OS, abstractions provided by the OS,
- Operating system II - memory management, resource virtualization, specifics of operating systems
- Computer networks I. - history, structures, OSI ISO model, Ethernet IEEE 802.3,
- Computer networks II. - WiFi, VLAN, VPN
- Modeling the structure of the program through UML, Use Case diagram, class diagram, data packages
Exercise in computer lab
Teacher / Lecturer
Syllabus
1. Introduction to the computer classroom and the evaluation kit with the AVR microcontroller
2. Deeper familiarization with AVR microcontrollers and the AVR Studio development environment, establishing a project, explaining the principles of writing the basic structure of a program
3. Creating a simple program in the C language, configuring I/O gates of the microcontroller, switching on the LED
4. Reserve (holidays)
5. Time delay using cycle (active waiting), effects with LED field
6. Microcontroller interrupt system, timing interrupt event synchronization, LED array effects
7. Algorithm for selecting a value from a table - indirect addressing. Show the number on the seven-segment display.
8. Algorithm for selecting a value from a table - indirect addressing. Show the number on the seven-segment display.
9. Writing information to the built-in EEPROM memory - backup settings
10. Number display on a four-digit, seven-segment display - time multiplex
11. Processing the state of connected buttons - siren program
12. Data transfer via serial channel to PC