| Course Code: CS1116H Course Name: Introduction to Computer Systems Prerequisites: Nil Syllabus: Introduction: The von Neumann architecture, data types and basic operations on bits, integer representation (signed, unsigned, 1`s complement and 2`s complement), floating-point number representation, basic arithmetic operations on integers and floating point numbers; Processor architecture: registers, ALU, instructions; Memory- hierarchy and address space, organization and allocation of memory, Interaction of processor and memory; Program execution on a system: Introduction to machine language and assembly language, Basic operational concepts of compiler, interpreter, loader, linker, and operating system. Basic structure of file system, working principles of an I/O device and its structure. Basic concepts of digital data transmission: Signal, encoding of data, modulation and demodulation, noise, Nyquist rate, Shannon capacity, Error detection and correction. Texts: 1. Yale N. Patt, Sanjay J. Patel, Introduction to computing systems: from bits and gates to C and beyond, 2nd Edition, Tata McGraw-Hill, 2011. 2. Randal E. Bryant and David R. O'Hallaron, Computer Systems: A Programmer's Perspective, 3rd Edition, Pearson India, 2016. 3. William Stallings, Data and Computer Communications, 8th Edition, Pearson India, 2007. |