Dr. Clincy Professor of CS CS 3510 - Chapter 1 (1 of 2) Dr. Clincy Professor of CS Dr. Clincy Lecture 3
Chapter 1 Objectives Know the difference between computer organization and computer architecture. Understand units of measure common to computer systems. Appreciate the evolution of computers. Understand the computer as a layered system. Be able to explain the von Neumann architecture and the function of basic computer components. Dr. Clincy
Ch 1- Introduction Why study computer organization and architecture? Design better programs, including system software such as compilers, operating systems, and device drivers. Optimize program behavior. Evaluate (benchmark) computer system performance. Understand time, space, and price tradeoffs in comparing systems. Dr. Clincy
Ch 1 - Introduction What is Computer Organization ? Encompasses all physical aspects of computer systems. E.g., circuit design, control signals (how the computer is controlled), signaling methods, memory types. Computer Organization helps us answer the question: “How does a computer operate ?” What is Computer Architecture ? Focuses on the structure and behavior of the computer system Refers to the logical aspects of system implementation as seen by the programmer. E.g., instruction sets, instruction formats, data types, number and types of registers, memory access methods, addressing modes, and I/O mechanisms. The instruction set architecture (ISA) is the interface between the machine and all the software that runs on the machine The “architecture” directly effects the logical execution of the programs Computer Architecture helps us answer the question: “How do I design a computer?” Not really clear-cut - Different perspectives of Org and Arch between Computer Scientists and Computer Engineers Dr. Clincy
Ch 1 - Org Versus Arch There is no clear distinction between matters related to computer organization and matters relevant to computer architecture. Highlevel language algorithms are implemented by lower level languages which are implemented by machine-level algorithms implemented electronically Principle of Equivalence of Hardware and Software: Any task done by software can also be done using hardware, and any operation performed directly by hardware can be done using software.* * Assuming speed is not a concern. Dr. Clincy
Ch 1 - Computer Components At the most basic level, a computer is a device consisting of three pieces: A processor to interpret and execute programs A memory to store both data and programs A mechanism for transferring data to and from the outside world. This course will explore these three major pieces/parts in some details Before doing so, you will explore some terminology and history from the remainder of Ch 1 (online) Dr. Clincy
Of the topics covered in Ch 1, will be examined over just (red): Know the difference between computer organization and computer architecture. Understanding units of measure common to computer systems. Appreciate the evolution of computers. Understand the computer as a layered system. Be able to explain the von Neumann architecture and the function of basic computer components. Dr. Clincy
Dr. Clincy Professor of CS CS 3501 - Chapter 2 Dr. Clincy Professor of CS Dr. Clincy
Chapter 2 Objectives Understand the fundamental concepts of number systems. Understand how computers add, subtract, divide and multiply Understand the fundamental concepts of floating-point representation. Gain familiarity with the most popular character coding systems. Understand how data is encoded for transmission Understand the concepts of error detecting and correcting. Dr. Clincy
Introduction A bit is the most basic unit of information in a computer. Sometimes these states are “high” or “low” voltage or “on” or “off..” A byte is a group of eight bits. A byte is the smallest possible addressable unit of computer storage. A word is a contiguous group of bytes. Words can be any number of bits or bytes. Word sizes of 16, 32, or 64 bits are most common. In a word-addressable system, a word is the smallest addressable unit of storage. A group of four bits is called a nibble. Bytes, therefore, consist of two nibbles: a “high-order nibble,” and a “low-order” nibble. Dr. Clincy
Positional Numbering Systems Review – Base 10 Numbers (Decimal) Base-10 The decimal number system is based on power of the base 10. For example, for the number 1259, the 9 is in the 10^0 column - 1s column the 5 is in the 10^1 column - 10s column the 2 is in the 10^2 column - 100s column the 1 is in the 10^3 column - 1000s column 1259 is 9 X 1 = 9 + 5 X 10 = 50 + 2 X 100 = 200 + 1 X 1000 = 1000 ----- 1259 Dr. Clincy
Positional Numbering Systems Introducing Base 2 (Binary) and Base 16 (Hex) Number Systems The Binary number system uses the same mechanism and concept however, the base is 2 versus 10 The place values for binary are based on powers of the base 2: … 2^7 2^6 2^5 2^4 2^3 2^2 2^1 2^0 128 64 32 16 8 4 2 1 Base-16 (Hex) The hexadecimal number system is based 16, and uses the same mechanisms and conversion routines we have already examined. The place values for hexadecimal are based on powers of the base 16 The digits for 10-15 are the letters A - F (A is 10, …….., F is 15) …….. 16^3 16^2 16^1 16^0 4096 256 16 1 Dr. Clincy
5-bit Binary Number System 24, 23, 22, 21, 20 16, 8, 4, 2, 1 Dr. Clincy
Different Number Systems Base-10 (Decimal) – what are the characters ? Example = 659 Base-2 (Binary) – what are the characters ? Example = 1101 Base-16 (Hex) – what are the characters ? Example = AE Base-8 (Octal) – what are the characters ? Example = 73 Dr. Clincy
Converting Between Bases Why Decimal, Binary and Hex ? Give subscripts for Decimal, Binary, Hex, Octal Dr. Clincy