COMPUTER TECHNOLOGY

Course objectives

KNOWLEDGE AND UNDERSTANDING. The student will acquire knowledge of the structure and principles of operation of processing systems, with particular reference to systems based on Intel 32 and 64 bit platform. CAPABILITY TO APPLY KNOWLEDGE AND UNDERSTANDING. At the end of the course the student will be able to calculate the approximation errors deriving from the use of floating point numbers. MAKING AUTONOMOUS JUDGEMENTS. At the end of the course the student will be able to evaluate the congruity of hardware architectural choices for processing systems. COMMUNICATE SKILLS. The student will be able to explain his/her own design choices. LEARNING SKILLS. The student will be able to address autonomously the study of topics in the field of discrete time and digital systems.

Channel 1
CHRISTIAN NAPOLI Lecturers' profile

Program - Frequency - Exams

Course program
The course is structured into the following main topics: Computing Machines: Historical Overview - Introduction to the history of computing machines, from Maya arithmetic to the abacus, and the use of historical simulators. Analysis of early functional units and computing machine architectures. Binary Representation of Numbers and Information - Study of binary representation, the mathematical bases, and conversion between different numerical bases. In-depth exploration of data representation in computers. Algebraic Structures and Boolean Algebras - Introduction to fundamental algebraic structures and Boolean algebras. Application of Boolean logic in the design of logic circuits. Switching Logic and Logic Gates - Study of the principles of switching logic, basic logic gates, and the synthesis of logic functions. Sequential Circuits and Flip-Flops - Design and analysis of sequential circuits, including flip-flops and their application in registers and counters. Memory and Processor Chip Components - Exploration of registers, memory units, PLA, FPGA, ALU, and their functions in computer architectures. RISC and CISC Architectures - Study of RISC and CISC architectures, their advantages and disadvantages, and the addressing modes used. Assembly Language - Introduction to assembly language, assembler directives, the use of stacks and subprograms, with examples of real assembly languages. I/O Operations and Interrupt Handling - In-depth study of input/output operations, interrupt and exception handling, and support software in operating systems. Microarchitecture Design - Study of the basic structure of processors, microprogramming, pipelining, and predictive techniques for high-performance processors. Memory Devices and Memory Hierarchy - Analysis of main memory devices, cache memories, secondary memory, and performance enhancement techniques. Efficient Circuits for Binary Arithmetic - Design of circuits for binary arithmetic, including fast multiplication algorithms and floating-point arithmetic according to the IEEE 754 standard.
Prerequisites
To successfully follow the course, students should have a basic understanding of computer science and programming. It is essential that they are already familiar with programming concepts in a high-level language, preferably C, and have a grasp of the fundamentals of algebra and mathematical logic. Preliminary knowledge of how operating systems work and basic concepts in digital electronics will be beneficial for effectively engaging with the topics covered in the course.
Books
For the course, the following textbooks will be adopted: Carl Hamacher, Zvonko Vranesic, Safwat Zaky, Naraig Manjikian: "Computer Organization and Embedded Systems", McGraw-Hill (2013) - This book provides a comprehensive overview of computer architecture, covering fundamental aspects such as functional units, RISC and CISC architectures, and processor design principles. It is an essential text for understanding the basics of computing machines and their components. Andrew S. Tanenbaum: "Structured Computer Organization", Pearson (2013) - A classic and highly regarded text that delves deeply into the fundamental and advanced concepts of computer architecture. Tanenbaum covers key topics such as switching logic, registers, cache memory, and high-performance processors, providing practical examples and real-world applications.
Frequency
Fortemente consigliata Strongly suggested
Exam mode
The exam consists of a written test conducted in the classroom, lasting 1 hour. Students must bring only a valid identification document and a non-erasable black or blue pen. During the test, the use of notes, manuals, or books is not allowed, and it is forbidden to communicate with colleagues or use communication devices, under penalty of annulment of the test. To take the exam, students must present an identification document at the exam site. The evaluation will be comprehensive and will consider the outcome of the exam in all its parts. WRITTEN TEST REGULATIONS The test aims to assess the achievement of the essential learning objectives and is conducted in writing. The candidate is required to answer 12 questions: 10 questions that are awarded 1.75 points only if answered correctly, specifically: 8 multiple-choice questions 1 exercise for completing a diagram with labels (scored from 0 to 1.75 points) 1 exercise for identifying basic logical operators 1 exercise on combinational network synthesis (scored from 0 to 3 points; particularly outstanding answers will be awarded 3.5 points) 2 open-ended questions (scored from 0 to 4 points; particularly outstanding answers will be awarded 4.5 points) 1 assembly programming exercise (scored from 0 to 3 points; particularly outstanding answers will be awarded 3.5 points) The total score, which will constitute the grade of the written test expressed out of thirty, will be calculated by summing the scores obtained from the answers to the questions. The exam is conducted in the classroom; students must bring only a valid identification document and a non-erasable pen. The maximum duration of the exam is one hour. The use of notes, manuals, or books is not permitted, and it is also forbidden to communicate with colleagues during the test or use communication devices (cell phones, smartphones, smartwatches, written messages, carrier pigeons, trained ants, telepathy experiments, etc.). Any violations of these rules, as well as leaving the room before submitting the test, will result in the annulment of the exam. Should there be any evidence of violations of the exam rules stated here or the regulations in force at this university, the examination committee will annul the exam and record a negative result. Additionally, appropriate sanctions and disciplinary measures will be considered. The candidate's achievement of a basic knowledge of the subject is considered demonstrated by obtaining a score of at least 18 points on the written test. If the candidate receives a score of less than 18/30 on the written test, the exam will be considered failed. FINAL GRADE The evaluation will be comprehensive and will consider the outcome of the exam in all its parts. The exam is considered passed with a grade of 18/30 or higher. Particularly deserving candidates may be awarded honors in addition to the highest grade (30/30). By taking the exam, the candidate acknowledges, approves, and agrees to these regulations.
Lesson mode
Lezioni frontali in aula Frontal lectures in class
SIMONE LENTI Lecturers' profile
  • Lesson code1017401
  • Academic year2024/2025
  • CourseCommunication Engineering
  • CurriculumCurriculum unico
  • Year1st year
  • Semester2nd semester
  • SSDING-INF/05
  • CFU12
  • Subject areaIngegneria informatica