230 likes | 419 Views
Chapter 2: Data Manipulation. Chapter 2: Data Manipulation. 2.1 Computer Architecture 2.2 Machine Language 2.3 Program Execution. Computer Architecture. Central Processing Unit (CPU) or processor Arithmetic/Logic U nit Control U nit Registers General purpose Special purpose Bus
E N D
Chapter 2: Data Manipulation • 2.1 Computer Architecture • 2.2 Machine Language • 2.3 Program Execution
Computer Architecture • Central Processing Unit (CPU) or processor • Arithmetic/Logic Unit • Control Unit • Registers • General purpose • Special purpose • Bus • Motherboard
Stored Program Concept Stored program concept the idea of storing programs in main memory A program can be encoded as bit patterns and stored in main memory. From there, the CPU can then extract the instructions and execute them. In turn, the program to be executed can be altered easily.
Terminology • Machine instruction: An instruction (or command) encoded as a bit pattern recognizable by the CPU • Machine language: The set of all instructions recognized by a machine
Machine Language Philosophies • Reduced Instruction Set Computing (RISC) • A minimal set of, simple, efficient, and fast instructions • Examples: PowerPC from Apple/IBM/Motorola and SPARK from Sun Microsystems • Complex Instruction Set Computing (CISC) • Many, convenient, and powerful instructions • Example: Pentium from Intel
Machine Instruction Types • Data Transfer: Copy data from one location to another • Arithmetic/Logic:Use existing bit patterns to compute a new bit patterns • Control:Direct the execution of the program (Branching)
Figure 2.4 The architecture of the machine described in Appendix C • 16 general-purpose registers (0-15) • 256 (0-255) main memory cells (each with a capacity of 8 bits)
Parts of a Machine Instruction • Op-code: Specifies which operation to execute • Operand: Gives more detailed information about the operation • Interpretation of operand varies depending on op-code
Figure 2.5 The composition of an instruction for the machine in Appendix C
Figure 2.6 Decoding the instruction 35A73 RXY = Store thebit pattern found in the register R int the memory cell whose address is XY
Figure 2.7 An encoded version of the instructions in Figure 2.2
Program Execution • Controlled by two special-purpose registers • Program counter: address of next instruction • Instruction register: current instruction • Machine Cycle • Fetch • Decode • Execute
Figure 2.10 The program from Figure 2.7 stored in main memory ready for execution
Figure 2.11 Performing the fetch step of the machine cycle (cont’d)
An example What bit pattern is in the memory cell whose address is hexadecimal 17 ?? Program counter=00; Address contents 00 14 01 02 02 34 03 17 04 C0 05 00 1RXY LOAD register R with bit patternfound in mem. Cellwhoseaddress is XY 3RXY STORE bit patternfound in register R in thememorycellwhoseaddress is XY C000 HALT execution
An example Program counter=02; 1402 load register 4 with bit pattern found in memory cell 02 register 4 =34 Program counter=04; 3417 store bit pattern found in register 4 in memory cell 17 memory cell 17=34 Program counter=06; C000 Halt