Team 1. Common Questions to all Teams. Team 2. Team 3. CO200-Computer Organization and Architecture - Assignment One

Size: px
Start display at page:

Download "Team 1. Common Questions to all Teams. Team 2. Team 3. CO200-Computer Organization and Architecture - Assignment One"

Transcription

1 CO200-Computer Organization and Architecture - Assignment One Note: A team may contain not more than 2 members. Format the assignment solutions in a L A TEX document. the assignment solutions PDF to basavaraj@nitk.edu.in. Submit the printed copy by 4pm, Friday, August 22. One submission per team. Late submission will carry negative credit. Use flowcharts, algorithms, diagrams, graphs, tables, screenshots, and illustrations wherever necessary. Com- Textbook codes: PH4e: Patterson and Hennessy. puter Organization and Architecture, 4ed. Common Questions to all Teams CQ 1 Indicate the percentage of task completed by each team member per question. Present your data in the form of a table. CQ 2 Represent the alphabetical names of the members of this team in ASCII format. Use a byte per character. Present the binary translation in hexadecimal form. CQ 3 Represent the alphabetical names of the members of this team in Unicode format. Use 16b or 32b per character as required. You may choose your mother tongue to write your name and then encode its individual characters in Unicode. In the case the characters of your mother tongue are not included in Unicode, you may use the Devanagari script. Present the binary translation in hexadecimal form. CQ 4 Use the answer from CQ 2 and CQ 3 for this question. Consider the first four bytes from each name (names of member one and member two), from each encoding (ASCII and Unicode) - You now have 4 sets of 4 bytes. Write a diagram to show each of these words (a word consists of 4 bytes) stored in memory locations 0x100, 0x200, 0x300, and 0x400. The memory is byte addressable. Answer the following: (a) What is the decimal number represented by the word in address 0x100 if the machine is Little Endian? Consider two s complement encoding. (b) What is the decimal number represented by the word in address 0x200 if the machine is Big Endian? Consider one s complement encoding. (c) What is the value of the real number stored in the address 0x300 if the machine is Little Endian? Assume IEEE 754 single precision format. (d) What is the value of the real number stored in the address 0x400 if the machine is Big Endian? Assume IEEE 754 single precision format. CQ 5 Use the last two digits of your roll numbers for this question. If your roll numbers are 12CO001 and 12CO022, let x = 1 and y = 22. Represent the following in IEEE 754 single precision format: x.y and -y.x. In this example, the team will have to convert 1.22 and into IEEE 754 SP FP numbers. Team 1 and 1952 in Princeton Institute of Advanced Studies by von Neumann and his team. The IAS computer is the prototype of all subsequent general purpose computers. (a) The IAS is one of the first computers to demonstrate which fundamental computer architecture concept? (b) Use the IAS instruction set, write the sequence of instructions to demonstrate the following: Let A=A(1), A(2),..., A(1000) and B=B(1), B(2),..., B(1000) be two vectors comprising 1000 numbers each that are to be added to form an array C such that C(I) = A(I) + B(I) for I=1,2,...,1000. forth the salient features of the first generation of computers? 3. What are the important factors that influence buying a laptop computer in today s technology? Scan the advertisements from vendors and vendor catalogs to list the characteristics and their importance. 4. PH4e: Exercise 1.2, Team 2 1. Write IAS assembly language code for stack push and pop operations assuming the following: (a) all stack elements to high memory addresses, (c) register R29 is used as the stack pointer and always contains the memory address just after the element which is on top of the stack, (d) for a push operation, register R1 holds the data to be pushed, (e) for a pop operation, the element from top of stack is to be popped into register R1. forth the salient features of the second generation of computers? 3. Explain the binary coded decimal standard with integer and floating point examples. 4. PH4e: Exercise 1.3, Team 3 1. Show how a rotate left operation, R1 R2 rotate left by 7 bits, can be implemented using the IAS instruction set. in the destination register R1. Note: R1 and R2 are identifiers of any two available registers in the system. forth the salient features of the third generation of computers? 3. Explain the purpose, philosophy and architecture of the Difference Engine designed by Charles Babbage. 4. PH4e: Exercise 1.4, 2.17.

2 Team 4 and 1952 in Princeton Institute of Advanced Studies by von Neumann and his team. The IAS computer is the prototype of all subsequent general purpose computers. (a) The IAS is one of the first computers to demonstrate which fundamental computer architecture concept? (b) Use the IAS instruction set, write the sequence of instructions to demonstrate the following: Let A=A(1), A(2),..., A(1000) be a vector of non negative integers. Sort the elements of the vector in the non-decreasing order in place. forth the salient features of the fourth generation of computers? 3. Write the sequence of instructions involved in the evaluation of the following equation on a Register-Register machine model based system: b = a a PH4e: Exercise 1.5, Team 5 and 1952 in Princeton Institute of Advanced Studies by von Neumann and his team. The IAS computer is the prototype of all subsequent general purpose computers. (a) The IAS is one of the first computers to demonstrate which fundamental computer architecture concept? (b) Use the IAS instruction set, write the sequence of instructions to calculate the factorial of a non negative number stored in the location A. forth the salient features of the current (fifth) generation of computers? 3. Explain the CRAY floating point data type with examples. 4. PH4e: Exercise 1.6, Team 6 and 1952 in Princeton Institute of Advanced Studies by von Neumann and his team. The IAS computer is the prototype of all subsequent general purpose computers. (a) The IAS is one of the first computers to demonstrate which fundamental computer architecture concept? (b) Use the IAS instruction set, write the sequence of instructions to demonstrate the following: Let A=A(1), A(2),..., A(1000) be a vector of non negative integers. Find the largest integer in the vector and store it a variable named L. 2. Explain the Intel extended precision 80b floating point data type with examples. 3. Use the MIPS I Instruction set for this question. Write a code sequence to find the sum of all the elements of an array. You may assume that the array contains 1024 elements. Each of the elements is 32 bit long. 4. PH4e: Exercise 1.7, Team 7 1. Use the IAS Instruction set for this question. Write a code sequence to find the sum of all the elements of an array. You may assume that the array contains 1024 elements. Each of the elements is 32 bit long. 2. What are the different sizes of storing integers and floating point numbers that have been used over the generations of computers. 3. Compilers translate the program into machine language so that it can be executed by hardware. Some systems use and interpreter rather than a compiler. How is this environment different? 4. PH4e: Exercise 1.8, Team 8 1. Use the IA-32 instruction set to write the sequence of instructions..., A(1000) and B=B(1), B(2),..., B(1000) be two vectors 2. The Hello World program is a program that prints the string Hello World to the output. Write such a program in C and compile it to generate an executable file, a.out on a Linux system. What is the size of this a.out file? What do the first 16 Bytes in this a.out file contain? 3. What are weighted codes? Represent the integers 0 to 9 in ( ) weighted code. 4. PH4e: Exercise 1.9, Team 9 1. Write IA-32 assembly language code for stack push and pop operations assuming the following: (a) all stack elements to high memory addresses, (c) register R29 is used as the stack pointer and always contains the memory address just after the element which is on top of the stack, (d) for a push operation, register R1 holds the data to be pushed, (e) for a pop operation, the element from top of stack is to be popped into register R1. 2. Write a C program which checks whether the machine it is running on supports the IEEE Floating Point representation. Your program should also verify whether the machine handles special forms (such as infinity) correctly. 3. Use (a) 2s complement and (b) 1s complement arithmetic to perform the following operations: (a) (b) PH4e: Exercise 1.10, Team Show how a rotate left operation, R1 R2 rotate left by 7 bits, can be implemented using the IA-32 instruction set.

3 in the destination register R1. Note: R1 and R2 are identifiers of any two available registers in the system. 2. Write the sequence of instructions involved in the evaluation of the following equation on a Register-Memory machine model based system: b = a a Which are the addressing modes used by the IA-32 ISA? 4. PH4e: Exercise 1.11, Team Use the IA-32 instruction set and write the sequence of instructions..., A(1000) be a vector of non negative integers. Sort the elements of the vector in the non-decreasing order in place. 2. Write a C program that can be used to identify whether the machine it is running on is using the LittleEndian or BigEndian byte ordering convention. 3. A 16-bit register contains the following: Interpret the contents as: (a) a BCD number (b) a binary number (c) an excess-3 number (d) two ASCII characters. 4. PH4e: Exercise 1.12, Team Use the IA-32 instruction set to write the sequence of instructions to calculate the factorial of a non negative number stored in the location A. 2. Represent the following in a 16-bit register: (a) , (b) 356 BCD, (c) A1 ASCII. 3. Use the ARM instruction set to write the sequence of instructions..., A(1000) and B=B(1), B(2),..., B(1000) be two vectors 4. PH4e: Exercise 1.13, Team Use the IA-32 instruction set to write the sequence of instructions..., A(1000) be a vector of non negative integers. Find the largest integer in the vector and store it a variable named L. 2. What are the different steps involved in the compilation of a C code? Use the GNU C Compiler as an example to illustrate your answer. Which programs does the GCC use to accomplish its intermediate tasks. Explain with an example. 3. What are weighted codes? Represent the integers 0 to 9 in ( ) weighted code. 4. PH4e: Exercise 1.14, Team Use the IA-32 instruction set for this question. Write a code sequence to find the sum of all the elements of an array. You may assume that the array contains 1024 elements. Each of the elements is 32 bit long. 2. What are weighted codes? Represent the integers 0 to 9 in ( ) weighted code. Do you observe any unique property about this code? 3. How many total bits are required for a direct mapped cache with 16KB of data and 4-word blocks, assuming a 32-bit address? 4. PH4e: Exercise 1.15, Team The IBM System/360 was one of most important members instruction set to write the sequence of instructions..., A(1000) and B=B(1), B(2),..., B(1000) be two vectors 2. Which are the addressing modes used by the MIPS64 ISA? 3. Write ARM assembly language code for stack push and pop operations assuming the following: (a) all stack elements to high memory addresses, (c) register R29 is used as the stack pointer and always contains the memory address just after the element which is on top of the stack, (d) for a push operation, register R1 holds the data to be pushed, (e) for a pop operation, the element from top of stack is to be popped into register R1. 4. PH4e: Exercise 1.16, Team Write IBM System/360 assembly language code for stack push and pop operations assuming the following: (a) all stack elements are of size 1 halfword, (b) stack grows from low memory to high memory addresses, (c) one register is used as the stack pointer and always contains the memory address just after the element which is on top of the stack, (d) for a push operation, a certain register holds the data to be pushed, (e) for a pop operation, the element from top of stack is to be popped into register a chosen register. 2. Which are the addressing modes used by the ARM ISA? 3. Show how a rotate left operation, R1 R2 rotate left by 7 bits, can be implemented using the ARM instruction set. in the destination register R1. Note: R1 and R2 are identifiers of any two available registers in the system. 4. PH4e: Exercise 2.1, Team Show how a rotate left operation, R1 R2 rotate left by 7 bits, can be implemented using the IBM System/360 instruction set. Note that we require the value present in general purpose register R2 to be rotated left by 7 bits,

4 with source register R2 not being modified, but the rotated value to be available in the destination register R1. Note: R1 and R2 are identifiers of any two available registers in the system. 2. Find a large program written in C (for example, gcc, from and compile the program twice, once with optimizations (use -O3) and once without. Compare the compilation time and run time of the program. 3. Introduce the Sign-Magnitude representation of integers. 4. PH4e: Exercise 2.2, Team The IBM System/360 was one of most important members instruction set and write the sequence of instructions..., A(1000) be a vector of non negative integers. Sort the elements of the vector in the non-decreasing order in place. 2. Assume you are in a company that markets a certain IC chip. The fixed costs, include R & D, fabrication and equipments, and so on, add up to $ The cost per wafer is $6000, and each wafer can be diced into 1500 dies. The die yield is 50%. Finally, the dies are packaged and tested, with a cost of $10 per chip. The test yield is 90%; only those that pass the test will be sold to customers. If the retail price is 40% more than the cost, at least how many chips have to be sold to break even? 3. PH4e: Exercise 2.3, Team The IBM System/360 was one of most important members instruction set to write the sequence of instructions to calculate the factorial of a non negative number stored in the location A. 2. We wish to compare the performance of two different machines: M1 and M2. The measurements made on the machines are shown in the table below. Which machine is faster for each program and by how much? Program Time on M1 Time on M seconds 5 seconds 2 3 seconds 4 seconds 3. PH4e: Exercise 2.4, Team (a) What are CISC and RISC CPU architectures? (b) Typically one CISC instruction takes more time to complete than a RISC instruction. Assume that a certain task needs P CISC instructions and 2P RISC instructions, and that one CISC instruction takes 8T ns to complete, and one RISC instruction takes 2T ns. Under this assumption, which one has the better performance? 2. The IBM System/360 was one of most important members instruction set to demonstrate the following: Let A=A(1), A(2),..., A(1000) be a vector of non negative integers. Find the largest integer in the vector and store it a variable named L. 3. Consider the data obtained after executing a program from two machines (M1 and M2) shown in the table below. Program execution time and total instructions executed by the program are shown. What is the instruction execution rate (instructions per second) for each of the machines. On M1 On M2 Program Time Instructions Time Instructions Program Time executed Time executed 1 10s s PH4e: Exercise 2.5, Team Use the IBM System/360 Instruction set for this question. Write a code sequence to find the sum of all the elements of an array. You may assume that the array contains 1024 elements. Each of the elements is 32 bit long. 2. What is a von Neumann machine? Explain with an illustration. 3. PH4e: Exercise 2.6, Consider two implementations, M1 and M2 of the same instruction set. There are 4 classes of instructions (A, B, C, and D) in the instruction set. M1 and M2 operate at a clock rate of 500MHz and 750MHz, respectively. The average number of clock cycles for each instruction class on M1 and M2 are given in the table below. Machine M1 Class CPI for this class A 1 B 2 C 3 D 4 Machine M2 Class CPI for this class A 2 B 2 C 4 D 4 Assume that peak performance is defined as the fastest rate that a machine can execute an instruction sequence chosen to maximize that rate. What are the peak performances of M1 and M2 expressed as instructions per second? Team 22..., A(1000) and B=B(1), B(2),..., B(1000) be two vectors 2. Write the sequence of instructions involved in the evaluation of the following equation in a accumulator based machine: b = a a + 7.

5 3. For this question, use the data from questions 19.5 and 20.5, wherever required. Assume the clock rates of the machines M1 and M2 are 200 MHz and 300 MHz respectively. Find the CPI for program 1 on both machines. 4. PH4e: Exercise 2.8, Team Write MIPS I assembly language code for stack push and pop operations assuming the following: (a) all stack elements to high memory addresses, (c) one register is used as the stack pointer and always contains the memory address just after the element which is on top of the stack, (d) for a push operation, a certain register holds the data to be pushed, (e) for a pop operation, the element from top of stack is to be popped into register a chosen register. 2. PH4e: Exercise 2.9, Consider two different implementations, M1 and M2, of the same instruction set. There are 3 classes of instructions (A, B, and C) in the instruction set. M1 has a clock rate of 400 MHz, and M2 has a clock rate of 200 MHz. The average number of cycles for each instruction class on M1 and M2 is given in the following table: Class CPI on CPI on C1 C2 3 rd -party M1 M2 usage usage usage A % 30% 50% B % 20% 30% C % 50% 20% The table also contains a summary of how three different compilers use the instruction set. C1 is a compiler produced by the makers of M1, C2 is a compiler produced by the makers of M2,, and the other compiler is a third-party product. Assume that each compiler uses the same number of instructions for a given program but that the instruction mix is as described in the table. Using C1 on both M1 and M2, how much faster can the makers of M1 claim that M1 is compared with M2? Using C2 on both M2 and M1 how much faster can the makers of M2 claim that M2 is compared with M1? If you purchase M1, which compiler would you use? Which machine would you purchase if we assume that all the other criteria are identical, including costs? Team Show how a rotate left operation, R1 R2 rotate left by 7 bits, can be implemented using the MIPS I instruction set. in the destination register R1. 2. PH4e: Exercise 2.10, We are interested in two implementations of a machine, one with and one without special floating-point hardware. Consider a program, P, with the following mix of operations: Floating-point Multiply 10% Floating-point Add 15% Floating-point Divide 5% Integer Instructions 70% Machine MFP (Machine with Floating Point) has floatingpoint hardware and can therefore implement the floatingpoint operations directly. It requires the following number of clock cycles for each Instruction class: Floating-point Multiply 6 Floating-point Add 4 Floating-point Divide 20 Integer Instructions 2 Machine MNFP (Machine with No Floating Point) has no floating-point hardware and so must emulate the floatingpoint operations using integer instructions. The integer instructions all take 2 clock cycles. The number of integer instructions needed to implement each of the floating point operations is as follows: Floating-point Multiply 30 Floating-point Add 20 Floating-point Divide 50 Both machines have a clock rate of 1000 MHz. Find the native MIPS (Millions of Instructions Per Second) ratings for both machines. Team Use the MIPS I instruction set and write the sequence of instructions..., A(1000) be a vector of non negative integers. Sort the elements of the vector in the non-decreasing order in place. 2. If the machine MFP in Question 24.3 needs 300 million instructions for this program, how many integer instructions does the machine MNFP require for the same program? 3. PH4e: Exercise 2.11, Team 26 to calculate the factorial of a non negative number stored in the location A. 2. (a) The internal representation of floating point numbers in IA-32 is 80 bits wide. This contains a 16 bit exponent. However it also advertises a 64 bit significand. How is this possible? (b) While the IA-32 allows 80 bit floating point numbers internally, only 64 bit floating point numbers, can be loaded or stored. Starting with only 64 bit numbers, how many operations are required before the full range of the 80 bit exponents are used? Give an example. 3. PH4e: Exercise 2.12, You are the lead designer of a new processor. The processor design and compiler are complete, and now you must decide whether to produce the current design as it stands or spend additional time to improve it. You discuss this problem with your hardware engineering team and arrive at the following options. (a) Leave the design as it stands. Call this base machine Mbase. It has clock rate of 500 MHz, and the following measurements have been made using a simulator.

6 Instruction Class CPI Frequency A 2 40% B 3 25% C 3 25% D 5 10% (b) Optimize the hardware. The hardware team claims that it can improve the processor design to give it a clock rate of 600 MHz. Call this machine Mopt. The following measurements were made using a simulator for Mopt: Instruction Class CPI Frequency A 2 40% B 2 25% C 3 25% D 4 10% What is the CPI for each machine? Team 27..., A(1000) be a vector of non negative integers. Find the largest integer in the vector and store it a variable named L. 2. Show a sequence of MIPS 1 instructions that can be used to implement the multiplication operation R1 R2 R3, where we require the destination to contain the value of the product if it fits in 32bits, or 0 if the product does not fit in 32 bits. 3. Use the data from Question 26.5 for this question. What are the native MIPS ratings for Mbase and Mopt? How much faster is Mopt than Mbase? 4. PH4e: Exercise Team 28..., A(1000) be a vector of non negative integers. Find the largest integer in the vector and store it a variable named L. 2. Write the sequence of instructions involved in the evaluation of the following equation in a Stack based machine: b = a a Define the following terms with respect to computer organization and architecture: accumulator, instruction set architecture, integrated circuit, sequential systems, combinational systems. 4. PH4e: Exercise 2.14.

04S1 COMP3211/9211 Computer Architecture Tutorial 1 (Weeks 02 & 03) Solutions

04S1 COMP3211/9211 Computer Architecture Tutorial 1 (Weeks 02 & 03) Solutions 04S1 COMP3211/9211 Computer Architecture Tutorial 1 (Weeks 02 & 03) Solutions Lih Wen Koh (lwkoh@cse) September 14, 2004 Key: SRQ = Stallings, Review Question; SP = Stallings Problem; P = Patterson & Hennessy

More information

M1 Computers and Data

M1 Computers and Data M1 Computers and Data Module Outline Architecture vs. Organization. Computer system and its submodules. Concept of frequency. Processor performance equation. Representation of information characters, signed

More information

9/3/2015. Data Representation II. 2.4 Signed Integer Representation. 2.4 Signed Integer Representation

9/3/2015. Data Representation II. 2.4 Signed Integer Representation. 2.4 Signed Integer Representation Data Representation II CMSC 313 Sections 01, 02 The conversions we have so far presented have involved only unsigned numbers. To represent signed integers, computer systems allocate the high-order bit

More information

Typical Processor Execution Cycle

Typical Processor Execution Cycle Typical Processor Execution Cycle Instruction Fetch Obtain instruction from program storage Instruction Decode Determine required actions and instruction size Operand Fetch Locate and obtain operand data

More information

COMP2121: Microprocessors and Interfacing. Instruction Set Architecture (ISA)

COMP2121: Microprocessors and Interfacing. Instruction Set Architecture (ISA) COMP2121: Microprocessors and Interfacing Instruction Set Architecture (ISA) http://www.cse.unsw.edu.au/~cs2121 Lecturer: Hui Wu Session 2, 2017 1 Contents Memory models Registers Data types Instructions

More information

2. Define Instruction Set Architecture. What are its two main characteristics? Be precise!

2. Define Instruction Set Architecture. What are its two main characteristics? Be precise! Chapter 1: Computer Abstractions and Technology 1. Assume two processors, a CISC processor and a RISC processor. In order to run a particular program, the CISC processor must execute 10 million instructions

More information

Lecture 4: Instruction Set Architecture

Lecture 4: Instruction Set Architecture Lecture 4: Instruction Set Architecture ISA types, register usage, memory addressing, endian and alignment, quantitative evaluation Reading: Textbook (5 th edition) Appendix A Appendix B (4 th edition)

More information

Chapter 1. Computer Abstractions and Technology. Lesson 3: Understanding Performance

Chapter 1. Computer Abstractions and Technology. Lesson 3: Understanding Performance Chapter 1 Computer Abstractions and Technology Lesson 3: Understanding Performance Manufacturing ICs 1.7 Real Stuff: The AMD Opteron X4 Yield: proportion of working dies per wafer Chapter 1 Computer Abstractions

More information

Introduction to C. Why C? Difference between Python and C C compiler stages Basic syntax in C

Introduction to C. Why C? Difference between Python and C C compiler stages Basic syntax in C Final Review CS304 Introduction to C Why C? Difference between Python and C C compiler stages Basic syntax in C Pointers What is a pointer? declaration, &, dereference... Pointer & dynamic memory allocation

More information

17. Instruction Sets: Characteristics and Functions

17. Instruction Sets: Characteristics and Functions 17. Instruction Sets: Characteristics and Functions Chapter 12 Spring 2016 CS430 - Computer Architecture 1 Introduction Section 12.1, 12.2, and 12.3 pp. 406-418 Computer Designer: Machine instruction set

More information

Page 1. Structure of von Nuemann machine. Instruction Set - the type of Instructions

Page 1. Structure of von Nuemann machine. Instruction Set - the type of Instructions Structure of von Nuemann machine Arithmetic and Logic Unit Input Output Equipment Main Memory Program Control Unit 1 1 Instruction Set - the type of Instructions Arithmetic + Logical (ADD, SUB, MULT, DIV,

More information

INTEL Architectures GOPALAKRISHNAN IYER FALL 2009 ELEC : Computer Architecture and Design

INTEL Architectures GOPALAKRISHNAN IYER FALL 2009 ELEC : Computer Architecture and Design INTEL Architectures GOPALAKRISHNAN IYER FALL 2009 GBI0001@AUBURN.EDU ELEC 6200-001: Computer Architecture and Design Silicon Technology Moore s law Moore's Law describes a long-term trend in the history

More information

Computer Organization CS 206 T Lec# 2: Instruction Sets

Computer Organization CS 206 T Lec# 2: Instruction Sets Computer Organization CS 206 T Lec# 2: Instruction Sets Topics What is an instruction set Elements of instruction Instruction Format Instruction types Types of operations Types of operand Addressing mode

More information

ECE/CS 552: Introduction to Computer Architecture ASSIGNMENT #1 Due Date: At the beginning of lecture, September 22 nd, 2010

ECE/CS 552: Introduction to Computer Architecture ASSIGNMENT #1 Due Date: At the beginning of lecture, September 22 nd, 2010 ECE/CS 552: Introduction to Computer Architecture ASSIGNMENT #1 Due Date: At the beginning of lecture, September 22 nd, 2010 This homework is to be done individually. Total 9 Questions, 100 points 1. (8

More information

EC 413 Computer Organization

EC 413 Computer Organization EC 413 Computer Organization Review I Prof. Michel A. Kinsy Computing: The Art of Abstraction Application Algorithm Programming Language Operating System/Virtual Machine Instruction Set Architecture (ISA)

More information

Run time environment of a MIPS program

Run time environment of a MIPS program Run time environment of a MIPS program Stack pointer Frame pointer Temporary local variables Return address Saved argument registers beyond a0-a3 Low address Growth of stack High address A translation

More information

Instructions: Language of the Computer

Instructions: Language of the Computer Instructions: Language of the Computer Tuesday 22 September 15 Many slides adapted from: and Design, Patterson & Hennessy 5th Edition, 2014, MK and from Prof. Mary Jane Irwin, PSU Summary Previous Class

More information

Rui Wang, Assistant professor Dept. of Information and Communication Tongji University.

Rui Wang, Assistant professor Dept. of Information and Communication Tongji University. Instructions: ti Language of the Computer Rui Wang, Assistant professor Dept. of Information and Communication Tongji University it Email: ruiwang@tongji.edu.cn Computer Hierarchy Levels Language understood

More information

Topics Power tends to corrupt; absolute power corrupts absolutely. Computer Organization CS Data Representation

Topics Power tends to corrupt; absolute power corrupts absolutely. Computer Organization CS Data Representation Computer Organization CS 231-01 Data Representation Dr. William H. Robinson November 12, 2004 Topics Power tends to corrupt; absolute power corrupts absolutely. Lord Acton British historian, late 19 th

More information

CO Computer Architecture and Programming Languages CAPL. Lecture 15

CO Computer Architecture and Programming Languages CAPL. Lecture 15 CO20-320241 Computer Architecture and Programming Languages CAPL Lecture 15 Dr. Kinga Lipskoch Fall 2017 How to Compute a Binary Float Decimal fraction: 8.703125 Integral part: 8 1000 Fraction part: 0.703125

More information

Real instruction set architectures. Part 2: a representative sample

Real instruction set architectures. Part 2: a representative sample Real instruction set architectures Part 2: a representative sample Some historical architectures VAX: Digital s line of midsize computers, dominant in academia in the 70s and 80s Characteristics: Variable-length

More information

Instruction Set Design

Instruction Set Design Instruction Set Design software instruction set hardware CPE442 Lec 3 ISA.1 Instruction Set Architecture Programmer's View ADD SUBTRACT AND OR COMPARE... 01010 01110 10011 10001 11010... CPU Memory I/O

More information

Review Questions. 1 The DRAM problem [5 points] Suggest a solution. 2 Big versus Little Endian Addressing [5 points]

Review Questions. 1 The DRAM problem [5 points] Suggest a solution. 2 Big versus Little Endian Addressing [5 points] Review Questions 1 The DRAM problem [5 points] Suggest a solution 2 Big versus Little Endian Addressing [5 points] Consider the 32-bit hexadecimal number 0x21d3ea7d. 1. What is the binary representation

More information

ENCM 501 Winter 2017 Assignment 3 for the Week of January 30

ENCM 501 Winter 2017 Assignment 3 for the Week of January 30 page 1 of 7 ENCM 501 Winter 2017 Assignment 3 for the Week of January 30 Steve Norman Department of Electrical & Computer Engineering University of Calgary January 2017 Assignment instructions and other

More information

CS4617 Computer Architecture

CS4617 Computer Architecture 1/27 CS4617 Computer Architecture Lecture 7: Instruction Set Architectures Dr J Vaughan October 1, 2014 2/27 ISA Classification Stack architecture: operands on top of stack Accumulator architecture: 1

More information

COS 140: Foundations of Computer Science

COS 140: Foundations of Computer Science COS 140: Foundations of Computer Science CPU Organization and Assembly Language Fall 2018 CPU 3 Components of the CPU..................................................... 4 Registers................................................................

More information

CS 265. Computer Architecture. Wei Lu, Ph.D., P.Eng.

CS 265. Computer Architecture. Wei Lu, Ph.D., P.Eng. CS 265 Computer Architecture Wei Lu, Ph.D., P.Eng. 1 Part 1: Data Representation Our goal: revisit and re-establish fundamental of mathematics for the computer architecture course Overview: what are bits

More information

COMP3221: Microprocessors and. and Embedded Systems. Instruction Set Architecture (ISA) What makes an ISA? #1: Memory Models. What makes an ISA?

COMP3221: Microprocessors and. and Embedded Systems. Instruction Set Architecture (ISA) What makes an ISA? #1: Memory Models. What makes an ISA? COMP3221: Microprocessors and Embedded Systems Lecture 2: Instruction Set Architecture (ISA) http://www.cse.unsw.edu.au/~cs3221 Lecturer: Hui Wu Session 2, 2005 Instruction Set Architecture (ISA) ISA is

More information

Lecture 1: Introduction to Microprocessors

Lecture 1: Introduction to Microprocessors ECE342 Digital II Lecture 1: Introduction to Microprocessors Dr. Ying (Gina) Tang Electrical and Computer Engineering Rowan University 1 What is a microprocessor Informally, a microprocessor (µp) is the

More information

Computer Architecture

Computer Architecture Computer Architecture Context and Motivation To better understand a software system, it is mandatory understand two elements: - The computer as a basic building block for the application - The operating

More information

MACHINE LEVEL REPRESENTATION OF DATA

MACHINE LEVEL REPRESENTATION OF DATA MACHINE LEVEL REPRESENTATION OF DATA CHAPTER 2 1 Objectives Understand how integers and fractional numbers are represented in binary Explore the relationship between decimal number system and number systems

More information

CSE 141 Computer Architecture Spring Lecture 3 Instruction Set Architecute. Course Schedule. Announcements

CSE 141 Computer Architecture Spring Lecture 3 Instruction Set Architecute. Course Schedule. Announcements CSE141: Introduction to Computer Architecture CSE 141 Computer Architecture Spring 2005 Lecture 3 Instruction Set Architecute Pramod V. Argade April 4, 2005 Instructor: TAs: Pramod V. Argade (p2argade@cs.ucsd.edu)

More information

Representation of Information

Representation of Information Representation of Information CS61, Lecture 2 Prof. Stephen Chong September 6, 2011 Announcements Assignment 1 released Posted on http://cs61.seas.harvard.edu/ Due one week from today, Tuesday 13 Sept

More information

Digital Logic. The Binary System is a way of writing numbers using only the digits 0 and 1. This is the method used by the (digital) computer.

Digital Logic. The Binary System is a way of writing numbers using only the digits 0 and 1. This is the method used by the (digital) computer. Digital Logic 1 Data Representations 1.1 The Binary System The Binary System is a way of writing numbers using only the digits 0 and 1. This is the method used by the (digital) computer. The system we

More information

IEEE Standard for Floating-Point Arithmetic: 754

IEEE Standard for Floating-Point Arithmetic: 754 IEEE Standard for Floating-Point Arithmetic: 754 G.E. Antoniou G.E. Antoniou () IEEE Standard for Floating-Point Arithmetic: 754 1 / 34 Floating Point Standard: IEEE 754 1985/2008 Established in 1985 (2008)

More information

Slides for Lecture 6

Slides for Lecture 6 Slides for Lecture 6 ENCM 501: Principles of Computer Architecture Winter 2014 Term Steve Norman, PhD, PEng Electrical & Computer Engineering Schulich School of Engineering University of Calgary 28 January,

More information

Alternate definition: Instruction Set Architecture (ISA) What is Computer Architecture? Computer Organization. Computer structure: Von Neumann model

Alternate definition: Instruction Set Architecture (ISA) What is Computer Architecture? Computer Organization. Computer structure: Von Neumann model What is Computer Architecture? Structure: static arrangement of the parts Organization: dynamic interaction of the parts and their control Implementation: design of specific building blocks Performance:

More information

High Performance Computing

High Performance Computing High Performance Computing CS701 and IS860 Basavaraj Talawar basavaraj@nitk.edu.in Course Syllabus Definition, RISC ISA, RISC Pipeline, Performance Quantification Instruction Level Parallelism Pipeline

More information

Computer Architecture, RISC vs. CISC, and MIPS Processor

Computer Architecture, RISC vs. CISC, and MIPS Processor CSE 2421: Systems I Low-Level Programming and Computer Organization Computer Architecture, RISC vs. CISC, and MIPS Processor Gojko Babić 1-1-217 Computer Architecture A modern meaning of the term computer

More information

ENCM 501 Winter 2015 Assignment 3 for the Week of February 2

ENCM 501 Winter 2015 Assignment 3 for the Week of February 2 page 1 of 6 ENCM 501 Winter 2015 Assignment 3 for the Week of February 2 Steve Norman Department of Electrical & Computer Engineering University of Calgary January 2015 Assignment instructions and other

More information

COSC 6385 Computer Architecture. Instruction Set Architectures

COSC 6385 Computer Architecture. Instruction Set Architectures COSC 6385 Computer Architecture Instruction Set Architectures Spring 2012 Instruction Set Architecture (ISA) Definition on Wikipedia: Part of the Computer Architecture related to programming Defines set

More information

ISA and RISCV. CASS 2018 Lavanya Ramapantulu

ISA and RISCV. CASS 2018 Lavanya Ramapantulu ISA and RISCV CASS 2018 Lavanya Ramapantulu Program Program =?? Algorithm + Data Structures Niklaus Wirth Program (Abstraction) of processor/hardware that executes 3-Jul-18 CASS18 - ISA and RISCV 2 Program

More information

CS311 Lecture: Other CPU Architectures: 0,1,2 and 3 address machines Last revised 10/05/07

CS311 Lecture: Other CPU Architectures: 0,1,2 and 3 address machines Last revised 10/05/07 CS311 Lecture: Other CPU Architectures: 0,1,2 and 3 address machines Last revised 10/05/07 I. Introduction - ------------ A. Recall that, at the start of the course, we drew a distinction between computer

More information

IBM 370 Basic Data Types

IBM 370 Basic Data Types IBM 370 Basic Data Types This lecture discusses the basic data types used on the IBM 370, 1. Two s complement binary numbers 2. EBCDIC (Extended Binary Coded Decimal Interchange Code) 3. Zoned Decimal

More information

EITF20: Computer Architecture Part2.1.1: Instruction Set Architecture

EITF20: Computer Architecture Part2.1.1: Instruction Set Architecture EITF20: Computer Architecture Part2.1.1: Instruction Set Architecture Liang Liu liang.liu@eit.lth.se 1 Outline Reiteration Instruction Set Principles The Role of Compilers MIPS 2 Main Content Computer

More information

Math 230 Assembly Programming (AKA Computer Organization) Spring 2008

Math 230 Assembly Programming (AKA Computer Organization) Spring 2008 Math 230 Assembly Programming (AKA Computer Organization) Spring 2008 MIPS Intro II Lect 10 Feb 15, 2008 Adapted from slides developed for: Mary J. Irwin PSU CSE331 Dave Patterson s UCB CS152 M230 L10.1

More information

ECE331: Hardware Organization and Design

ECE331: Hardware Organization and Design ECE331: Hardware Organization and Design Lecture 15: Midterm 1 Review Adapted from Computer Organization and Design, Patterson & Hennessy, UCB Basics Midterm to cover Book Sections (inclusive) 1.1 1.5

More information

30 August CS101L PROGRAMMING LAB 2

30 August CS101L PROGRAMMING LAB 2 UNIT 1 Introduction Microprocessors and Microcontrollers-its computational functionality and importance - 30 August 2017 15CS101L PROGRAMMING LAB 2 Microcontrollers Embedded Systems Operations managed

More information

Instruction Set Architecture

Instruction Set Architecture C Fortran Ada etc. Basic Java Instruction Set Architecture Compiler Assembly Language Compiler Byte Code Nizamettin AYDIN naydin@yildiz.edu.tr http://www.yildiz.edu.tr/~naydin http://akademik.bahcesehir.edu.tr/~naydin

More information

Final Labs and Tutors

Final Labs and Tutors ICT106 Fundamentals of Computer Systems - Topic 2 REPRESENTATION AND STORAGE OF INFORMATION Reading: Linux Assembly Programming Language, Ch 2.4-2.9 and 3.6-3.8 Final Labs and Tutors Venue and time South

More information

Microcontrollers. Microcontroller

Microcontrollers. Microcontroller Microcontrollers Microcontroller A microprocessor on a single integrated circuit intended to operate as an embedded system. As well as a CPU, a microcontroller typically includes small amounts of RAM and

More information

Problem with Scanning an Infix Expression

Problem with Scanning an Infix Expression Operator Notation Consider the infix expression (X Y) + (W U), with parentheses added to make the evaluation order perfectly obvious. This is an arithmetic expression written in standard form, called infix

More information

Instruction Sets: Characteristics and Functions

Instruction Sets: Characteristics and Functions Instruction Sets: Characteristics and Functions Chapter 10 Lesson 15 Slide 1/22 Machine instruction set Computer designer: The machine instruction set provides the functional requirements for the CPU.

More information

CSCI 402: Computer Architectures. Instructions: Language of the Computer (1) Fengguang Song Department of Computer & Information Science IUPUI

CSCI 402: Computer Architectures. Instructions: Language of the Computer (1) Fengguang Song Department of Computer & Information Science IUPUI To study Chapter 2: CSCI 402: Computer Architectures Instructions: Language of the Computer (1) Fengguang Song Department of Computer & Information Science IUPUI Contents 2.1-2.3 Introduction to what is

More information

Introduction to Computer Science. Homework 1

Introduction to Computer Science. Homework 1 Introduction to Computer Science Homework. In each circuit below, the rectangles represent the same type of gate. Based on the input and output information given, identify whether the gate involved is

More information

EN164: Design of Computing Systems Topic 03: Instruction Set Architecture Design

EN164: Design of Computing Systems Topic 03: Instruction Set Architecture Design EN164: Design of Computing Systems Topic 03: Instruction Set Architecture Design Professor Sherief Reda http://scale.engin.brown.edu Electrical Sciences and Computer Engineering School of Engineering Brown

More information

Assembly Language. Lecture 2 - x86 Processor Architecture. Ahmed Sallam

Assembly Language. Lecture 2 - x86 Processor Architecture. Ahmed Sallam Assembly Language Lecture 2 - x86 Processor Architecture Ahmed Sallam Introduction to the course Outcomes of Lecture 1 Always check the course website Don t forget the deadline rule!! Motivations for studying

More information

Course Schedule. CS 221 Computer Architecture. Week 3: Plan. I. Hexadecimals and Character Representations. Hexadecimal Representation

Course Schedule. CS 221 Computer Architecture. Week 3: Plan. I. Hexadecimals and Character Representations. Hexadecimal Representation Course Schedule CS 221 Computer Architecture Week 3: Information Representation (2) Fall 2001 W1 Sep 11- Sep 14 Introduction W2 Sep 18- Sep 21 Information Representation (1) (Chapter 3) W3 Sep 25- Sep

More information

Announcement. (CSC-3501) Lecture 3 (22 Jan 2008) Today, 1 st homework will be uploaded at our class website. Seung-Jong Park (Jay)

Announcement. (CSC-3501) Lecture 3 (22 Jan 2008) Today, 1 st homework will be uploaded at our class website. Seung-Jong Park (Jay) Computer Architecture (CSC-3501) Lecture 3 (22 Jan 2008) Seung-Jong Park (Jay) http://www.csc.lsu.edu/~sjpark 1 Announcement Today, 1 st homework will be uploaded at our class website Due date is the beginning

More information

Fundamentals of Digital Computers The mechanical computer age began with the advent of the abacus in 500 B.C by Babylonians. The abacus, which was

Fundamentals of Digital Computers The mechanical computer age began with the advent of the abacus in 500 B.C by Babylonians. The abacus, which was 1 Fundamentals of Digital Computers The mechanical computer age began with the advent of the abacus in 500 B.C by Babylonians. The abacus, which was used extensively and is still in use today, was not

More information

COMP2611: Computer Organization. Data Representation

COMP2611: Computer Organization. Data Representation COMP2611: Computer Organization Comp2611 Fall 2015 2 1. Binary numbers and 2 s Complement Numbers 3 Bits: are the basis for binary number representation in digital computers What you will learn here: How

More information

The von Neumann Architecture. IT 3123 Hardware and Software Concepts. The Instruction Cycle. Registers. LMC Executes a Store.

The von Neumann Architecture. IT 3123 Hardware and Software Concepts. The Instruction Cycle. Registers. LMC Executes a Store. IT 3123 Hardware and Software Concepts February 11 and Memory II Copyright 2005 by Bob Brown The von Neumann Architecture 00 01 02 03 PC IR Control Unit Command Memory ALU 96 97 98 99 Notice: This session

More information

When an instruction is initially read from memory it goes to the Instruction register.

When an instruction is initially read from memory it goes to the Instruction register. CS 320 Ch. 12 Instruction Sets Computer instructions are written in mnemonics. Mnemonics typically have a 1 to 1 correspondence between a mnemonic and the machine code. Mnemonics are the assembly language

More information

Instruction Set And Architectural Features Of A Modern Risc Processor

Instruction Set And Architectural Features Of A Modern Risc Processor Instruction Set And Architectural Features Of A Modern Risc Processor PowerPC, as an evolving instruction set, has since 2006 been named Power 1 History, 2 Design features The result was the POWER instruction

More information

Computer Architectures

Computer Architectures Computer Architectures Instruction Set Architectures 2018. április 22. Budapest Gábor Horváth associate professor BUTE Dept. of Networked Systems and Services ghorvath@hit.bme.hu 2 Instruction set architectures

More information

Evolution of ISAs. Instruction set architectures have changed over computer generations with changes in the

Evolution of ISAs. Instruction set architectures have changed over computer generations with changes in the Evolution of ISAs Instruction set architectures have changed over computer generations with changes in the cost of the hardware density of the hardware design philosophy potential performance gains One

More information

CSCE 212: FINAL EXAM Spring 2009

CSCE 212: FINAL EXAM Spring 2009 CSCE 212: FINAL EXAM Spring 2009 Name (please print): Total points: /120 Instructions This is a CLOSED BOOK and CLOSED NOTES exam. However, you may use calculators, scratch paper, and the green MIPS reference

More information

CSEE 3827: Fundamentals of Computer Systems

CSEE 3827: Fundamentals of Computer Systems CSEE 3827: Fundamentals of Computer Systems Lecture 15 April 1, 2009 martha@cs.columbia.edu and the rest of the semester Source code (e.g., *.java, *.c) (software) Compiler MIPS instruction set architecture

More information

von Neumann Architecture Basic Computer System Early Computers Microprocessor Reading Assignment An Introduction to Computer Architecture

von Neumann Architecture Basic Computer System Early Computers Microprocessor Reading Assignment An Introduction to Computer Architecture Reading Assignment EEL 4744C: Microprocessor Applications Lecture 1 Part 1 An Introduction to Computer Architecture Microcontrollers and Microcomputers: Chapter 1, Appendix A, Chapter 2 Software and Hardware

More information

Basic Computer System. von Neumann Architecture. Reading Assignment. An Introduction to Computer Architecture. EEL 4744C: Microprocessor Applications

Basic Computer System. von Neumann Architecture. Reading Assignment. An Introduction to Computer Architecture. EEL 4744C: Microprocessor Applications Reading Assignment EEL 4744C: Microprocessor Applications Lecture 1 Part 1 An Introduction to Computer Architecture Microcontrollers and Microcomputers: Chapter 1, Appendix A, Chapter 2 Software and Hardware

More information

ELEC / Computer Architecture and Design Fall 2013 Instruction Set Architecture (Chapter 2)

ELEC / Computer Architecture and Design Fall 2013 Instruction Set Architecture (Chapter 2) ELEC 5200-001/6200-001 Computer Architecture and Design Fall 2013 Instruction Set Architecture (Chapter 2) Victor P. Nelson, Professor & Asst. Chair Vishwani D. Agrawal, James J. Danaher Professor Department

More information

Chapter 2. Data Representation in Computer Systems

Chapter 2. Data Representation in Computer Systems Chapter 2 Data Representation in Computer Systems Chapter 2 Objectives Understand the fundamentals of numerical data representation and manipulation in digital computers. Master the skill of converting

More information

Computer Organization and Programming

Computer Organization and Programming Sep 2006 Prof. Antônio Augusto Fröhlich (http://www.lisha.ufsc.br) 8 Computer Organization and Programming Prof. Dr. Antônio Augusto Fröhlich guto@lisha.ufsc.br http://www.lisha.ufsc.br/~guto Sep 2006

More information

Chapter 5. A Closer Look at Instruction Set Architectures

Chapter 5. A Closer Look at Instruction Set Architectures Chapter 5 A Closer Look at Instruction Set Architectures Chapter 5 Objectives Understand the factors involved in instruction set architecture design. Gain familiarity with memory addressing modes. Understand

More information

Assembly Language. Lecture 2 x86 Processor Architecture

Assembly Language. Lecture 2 x86 Processor Architecture Assembly Language Lecture 2 x86 Processor Architecture Ahmed Sallam Slides based on original lecture slides by Dr. Mahmoud Elgayyar Introduction to the course Outcomes of Lecture 1 Always check the course

More information

Instruction Set Architecture

Instruction Set Architecture Instruction Set Architecture Instructor: Preetam Ghosh Preetam.ghosh@usm.edu CSC 626/726 Preetam Ghosh Language HLL : High Level Language Program written by Programming language like C, C++, Java. Sentence

More information

WYSE Academic Challenge Computer Fundamentals Test (State Finals)

WYSE Academic Challenge Computer Fundamentals Test (State Finals) WYSE Academic Challenge Computer Fundamentals Test (State Finals) - 1998 1. What is the decimal value for the result of the addition of the binary values: 1111 + 0101? (Assume a 4 bit, 2's complement representation.)

More information

10.1. Unit 10. Signed Representation Systems Binary Arithmetic

10.1. Unit 10. Signed Representation Systems Binary Arithmetic 0. Unit 0 Signed Representation Systems Binary Arithmetic 0.2 BINARY REPRESENTATION SYSTEMS REVIEW 0.3 Interpreting Binary Strings Given a string of s and 0 s, you need to know the representation system

More information

GRE Architecture Session

GRE Architecture Session GRE Architecture Session Session 2: Saturday 23, 1995 Young H. Cho e-mail: youngc@cs.berkeley.edu www: http://http.cs.berkeley/~youngc Y. H. Cho Page 1 Review n Homework n Basic Gate Arithmetics n Bubble

More information

CSIS1120A. 10. Instruction Set & Addressing Mode. CSIS1120A 10. Instruction Set & Addressing Mode 1

CSIS1120A. 10. Instruction Set & Addressing Mode. CSIS1120A 10. Instruction Set & Addressing Mode 1 CSIS1120A 10. Instruction Set & Addressing Mode CSIS1120A 10. Instruction Set & Addressing Mode 1 Elements of a Machine Instruction Operation Code specifies the operation to be performed, e.g. ADD, SUB

More information

CHAPTER 5 A Closer Look at Instruction Set Architectures

CHAPTER 5 A Closer Look at Instruction Set Architectures CHAPTER 5 A Closer Look at Instruction Set Architectures 5.1 Introduction 199 5.2 Instruction Formats 199 5.2.1 Design Decisions for Instruction Sets 200 5.2.2 Little versus Big Endian 201 5.2.3 Internal

More information

CS 265. Computer Architecture. Wei Lu, Ph.D., P.Eng.

CS 265. Computer Architecture. Wei Lu, Ph.D., P.Eng. CS 265 Computer Architecture Wei Lu, Ph.D., P.Eng. CS 265 Midterm #1 Monday, Oct 18, 12:00pm-1:45pm, SCI 163 Questions on essential terms and concepts of Computer Architecture Mathematical questions on

More information

EEM336 Microprocessors I. Introduction to the Microprocessor and Computer

EEM336 Microprocessors I. Introduction to the Microprocessor and Computer EEM336 Microprocessors I Introduction to the Microprocessor and Computer Introduction Overview of Intel microprocessors. Discussion of history of computers. Function of the microprocessor. Terms and jargon

More information

Computer Architecture Dr. Charles Kim Howard University

Computer Architecture Dr. Charles Kim Howard University EECE416 Microcomputer Fundamentals Computer Architecture Dr. Charles Kim Howard University 1 Computer Architecture Computer Architecture Art of selecting and interconnecting hardware components to create

More information

Course overview. Computer Organization and Assembly Languages Yung-Yu Chuang 2007/09/17. with slides by Kip Irvine

Course overview. Computer Organization and Assembly Languages Yung-Yu Chuang 2007/09/17. with slides by Kip Irvine Course overview Computer Organization and Assembly Languages Yung-Yu Chuang 2007/09/17 with slides by Kip Irvine Logistics Meeting time: 2:20pm-5:20pm, Monday Classroom: CSIE Room 102 Instructor: Yung-Yu

More information

UNIT-II. Part-2: CENTRAL PROCESSING UNIT

UNIT-II. Part-2: CENTRAL PROCESSING UNIT Page1 UNIT-II Part-2: CENTRAL PROCESSING UNIT Stack Organization Instruction Formats Addressing Modes Data Transfer And Manipulation Program Control Reduced Instruction Set Computer (RISC) Introduction:

More information

Figure 1-1. A multilevel machine.

Figure 1-1. A multilevel machine. 1 INTRODUCTION 1 Level n Level 3 Level 2 Level 1 Virtual machine Mn, with machine language Ln Virtual machine M3, with machine language L3 Virtual machine M2, with machine language L2 Virtual machine M1,

More information

CS356: Discussion #6 Assembly Procedures and Arrays. Marco Paolieri

CS356: Discussion #6 Assembly Procedures and Arrays. Marco Paolieri CS356: Discussion #6 Assembly Procedures and Arrays Marco Paolieri (paolieri@usc.edu) Procedures Functions are a key abstraction in software They break down a problem into subproblems. Reusable functionality:

More information

UNIT 7A Data Representation: Numbers and Text. Digital Data

UNIT 7A Data Representation: Numbers and Text. Digital Data UNIT 7A Data Representation: Numbers and Text 1 Digital Data 10010101011110101010110101001110 What does this binary sequence represent? It could be: an integer a floating point number text encoded with

More information

Computer Architecture I (1DT016) Cary Laxer, Ph.D. Visiting Lecturer

Computer Architecture I (1DT016) Cary Laxer, Ph.D. Visiting Lecturer Computer Architecture I (1DT016) Cary Laxer, Ph.D. Visiting Lecturer Today s class Introductions Computer organization overview Introduction to assembly language programming Friday, September 28, 2007

More information

Announcements HW1 is due on this Friday (Sept 12th) Appendix A is very helpful to HW1. Check out system calls

Announcements HW1 is due on this Friday (Sept 12th) Appendix A is very helpful to HW1. Check out system calls Announcements HW1 is due on this Friday (Sept 12 th ) Appendix A is very helpful to HW1. Check out system calls on Page A-48. Ask TA (Liquan chen: liquan@ece.rutgers.edu) about homework related questions.

More information

Computer architecture, solved problems

Computer architecture, solved problems Computer architecture, solved problems v.01 2018/19 1. Minicomputers in the eighties (eg. DEC PDP-11) had 18 address signals and of course, the 18-bit address bus. Answer the following questions: a) What

More information

Chapter 2A Instructions: Language of the Computer

Chapter 2A Instructions: Language of the Computer Chapter 2A Instructions: Language of the Computer Copyright 2009 Elsevier, Inc. All rights reserved. Instruction Set The repertoire of instructions of a computer Different computers have different instruction

More information

CENG3420 Lecture 03 Review

CENG3420 Lecture 03 Review CENG3420 Lecture 03 Review Bei Yu byu@cse.cuhk.edu.hk 2017 Spring 1 / 38 CISC vs. RISC Complex Instruction Set Computer (CISC) Lots of instructions of variable size, very memory optimal, typically less

More information

ECE232: Hardware Organization and Design

ECE232: Hardware Organization and Design ECE232: Hardware Organization and Design Lecture 2: Hardware/Software Interface Adapted from Computer Organization and Design, Patterson & Hennessy, UCB Overview Basic computer components How does a microprocessor

More information

From CISC to RISC. CISC Creates the Anti CISC Revolution. RISC "Philosophy" CISC Limitations

From CISC to RISC. CISC Creates the Anti CISC Revolution. RISC Philosophy CISC Limitations 1 CISC Creates the Anti CISC Revolution Digital Equipment Company (DEC) introduces VAX (1977) Commercially successful 32-bit CISC minicomputer From CISC to RISC In 1970s and 1980s CISC minicomputers became

More information

CS 61C: Great Ideas in Computer Architecture Performance and Floating Point Arithmetic

CS 61C: Great Ideas in Computer Architecture Performance and Floating Point Arithmetic CS 61C: Great Ideas in Computer Architecture Performance and Floating Point Arithmetic Instructors: Bernhard Boser & Randy H. Katz http://inst.eecs.berkeley.edu/~cs61c/ 10/25/16 Fall 2016 -- Lecture #17

More information

Name: CMSC 313 Fall 2001 Computer Organization & Assembly Language Programming Exam 1. Question Points I. /34 II. /30 III.

Name: CMSC 313 Fall 2001 Computer Organization & Assembly Language Programming Exam 1. Question Points I. /34 II. /30 III. CMSC 313 Fall 2001 Computer Organization & Assembly Language Programming Exam 1 Name: Question Points I. /34 II. /30 III. /36 TOTAL: /100 Instructions: 1. This is a closed-book, closed-notes exam. 2. You

More information

Lecture 4: MIPS Instruction Set

Lecture 4: MIPS Instruction Set Lecture 4: MIPS Instruction Set No class on Tuesday Today s topic: MIPS instructions Code examples 1 Instruction Set Understanding the language of the hardware is key to understanding the hardware/software

More information

CPE 323 MSP430 INSTRUCTION SET ARCHITECTURE (ISA)

CPE 323 MSP430 INSTRUCTION SET ARCHITECTURE (ISA) CPE 323 MSP430 INSTRUCTION SET ARCHITECTURE (ISA) Aleksandar Milenković Email: milenka@uah.edu Web: http://www.ece.uah.edu/~milenka Objective Introduce MSP430 Instruction Set Architecture (Class of ISA,

More information