Overview of Computer Architecture Basic computer design was developed by Von Neumann at Institute of Advanced Studies, Princeton. Such a architecture called as Von Neumann Architecture. It is based on the following concepts: a. Instructions and data are stored in a read-write memory b. Contents of the memory are addressable by location. c. Processor fetches the instruction and executes in a sequential fashion.
Processor or CPU
Memory
Input Output Devices
Figure 1 : components of a computer Main parts of the computer system: Processor or CPU: Executes the instructions Main Memory: Holds instructions and data I/O Devices: for communication outside
What happens when you execute a program? We work with multiple applications like word, browser, and media players etc. in the computer. It may be these complex applications or a program written by you in C or Python, finally at the low end it has to be executed by the hardware called processor.
Processor can’t understand either the language you use to write programs or handle complex instructions you have written in the program. What it can understand is only the binary language i.e., 0 or 1 and executes simple instructions like add, sub, mul and division.
Software is organized in a hierarchical fashion. On the top are the application programs, to facilitate execution of these programs system software is there in the next layer. System software is nothing but compiler and operating systems. Compilers convert the program in high level language to machine understandable language i.e., binary. Operating system allocates space in the memory, handles input and output operations, and schedules the execution by the processor. From High level language to language of hardware:
References: J. L. Hennessy & D.A. Patterson, Computer Organization and Design Morgan Kaufman, 2011 (chapter 1.1 and 1.2)
Inside the processor:
References: 3.1 and 3.2 computer function - Computer Organization and Architecture William Stallings Registers: Refer 12.2 Register Organization - Computer Organization and Architecture William Stallings
Instruction cycle:
Fetch cycle:
Indirect cycle:
References: 12.3 Computer Organization and Architecture William Stallings Instruction Set Architecture Types of operations: References: 10.4 Computer Organization and Architecture William Stallings
Instruction format and Addressing Modes: Refer : chapter 11 Computer Organization and Architecture, william stallings