Home
Book Fire Online by http://bookfire.net Prev Page Prev Page
Table of Contents
Back Cover
The Essentials of Computer Organization and Architecture
Preface
To the Instructor
Chapter 1: Introduction
1.2 The Main Components of a Computer
1.3 An Example System - Wading through the Jargon
1.4 Standards Organizations
1.5 Historical Development
1.6 The Computer Level Hierarchy
1.7 The Von Neumann Model
1.8 Non-Von Neumann Models
Chapter Summary
Further Reading
References
Review of Essential Terms and Concepts
Exercises
Chapter 2: Data Representation in Computer Systems
2.2 Positional Numbering Systems
2.3 Decimal To Binary Conversions
2.4 Signed Integer Representation
2.5 Floating-Point Representation
2.6 Character Codes
2.7 Codes For Data Recording And Transmission
2.8 Error Detection And Correction
Chapter Summary
Further Reading
References
Review Of Essential Terms And Concepts
Exercises
Chapter 3: Boolean Algebra and Digital Logic
3.2 Boolean Algebra
3.3 Logic Gates
3.4 Digital Components
3.5 Combinational Circuits
3.6 Sequential Circuits
3.7 Designing Circuits
Chapter Summary
Further Reading
References
Review of Essential Terms and Concepts
Exercises
Focus on Karnaugh Maps
Chapter 4: MARIE : An Introduction to a Simple Computer
4.2 Marie
4.3 Instruction Processing
4.4 A Simple Program
4.5 A Discussion on Assemblers
4.6 Extending Our Instruction Set
4.7 A Discussion on Decoding — Hardwired vs. Microprogrammed Control
4.8 Real World Examples of Computer Architectures
Chapter Summary
Further Reading
References
Review of Essential Terms and Concepts
Exercises
Chapter 5: A Closer Look at Instruction Set Architectures
5.2 Instruction Formats
5.3 Instruction Types
5.4 Addressing
5.5 Instruction-Level Pipelining
5.6 Real-World Examples of ISAs
Chapter Summary
Further Reading
References
Review of Essential Terms and Concepts
Exercises
Chapter 6: Memory
6.2 Types of Memory
6.3 The Memory Hierarchy
6.4 Cache Memory
6.5 Virtual Memory
6.6 A Real-World Example of Memory Management
Chapter Summary
Further Reading
References
Review of Essential Terms and Concepts
Exercises
Chapter 7: Input/Output and Storage Systems
7.2 Amdahl's Law
7.3 I/O Architectures
7.4 Magnetic Disk Technology
7.5 Optical Disks
7.6 Magnetic Tape
7.7 RAID
7.8 Data Compression
Chapter Summary
Further Reading
References
Review of Essential Terms and Concepts
Exercises
Focus on Selected Disk Storage Implementations
Chapter 8: System Software
8.2 Operating Systems
8.3 Protected Environments
8.4 Programming Tools
8.5 Java — All of the Above
8.6 Database Software
8.7 Transaction Managers
Chapter Summary
Further Reading
References
Review of Essential Terms and Concepts
Exercises
Chapter 9: Alternative Architectures
9.2 RISC Machines
9.3 Flynn's Taxonomy
9.4 Parallel and Multiprocessor Architectures
9.5 Alternative Parallel Processing Approaches
Chapter Summary
Further Reading
References
Review of Essential Terms and Concepts
Exercises
Chapter 10: Performance Measurement and Analysis
10.2 The Basic Computer Performance Equation
10.3 Mathematical Preliminaries
10.4 Benchmarking
10.6 Disk Performance
Chapter Summary
Further Reading
References
Review Of Essential Terms And Concepts
Exercises
Chapter 11: Network Organization and Architecture
11.2 Early Business Computer Networks
11.3 Early Academic and Scientific Networks — The Roots and Architecture of the Internet
11.5 Network Protocols II — TCP/IP Network Architecture
11.6 Network Organization
11.7 High-Capacity Digital Links
11.8 A Look at the Internet
Chapter Summary
Further Reading
References
Review of Essential Terms and Concepts
Exercises
Appendix A: Data Structures and the Computer
A.2 Fundamental Structures
A.3 Trees
A.4 Network Graphs
Summary
Further Reading
References
Exercises
Glossary
Glossary Numbers
Glossary A
Glossary B
Glossary C
Glossary D
Glossary E
Glossary F
Glossary G
Glossary H
Glossary I
Glossary J
Glossary K
Glossary L
Glossary M
Glossary N
Glossary O
Glossary P
Glossary Q
Glossary R
Glossary S
Glossary T
Glossary U
Glossary V
Glossary W
Glossary Z
Answers and Hints for Selected Exercises
Chapter 2
Chapter 3
Chapter 4
Chapter 5
Chapter 6
Chapter 7
Chapter 8
Chapter 9
Chapter 10
Chapter 11
Appendix A
Index
Index A
Index B
Index C
Index D
Index E
Index F
Index G
Index H
Index I
Index J
Index K
Index L
Index M
Index N
Index O
Index P
Index Q
Index R
Index S
Index T
Index U
Index V
Index W
Index X
Index Z
List of Figures
List of Tables
List of Code Examples
List of Sidebars
Team LiB
Previous Section Next Section

Exercises

  1.  Hints and Answers    Perform the following base conversions using subtraction or division-remainder:

    1.  Hints and Answers    45810 = ________ 3

    2.  Hints and Answers    67710 = ________ 5

    3.  Hints and Answers    151810 = _______ 7

    4.  Hints and Answers    440110 = _______ 9

  2. Perform the following base conversions using subtraction or division-remainder:

    1. 58810 = _________ 3

    2. 225410 = ________ 5

    3. 65210 = ________ 7

    4. 310410 = ________ 9

  3.  Hints and Answers    Convert the following decimal fractions to binary with a maximum of six places to the right of the binary point:

    1.  Hints and Answers    26.78125

    2.  Hints and Answers    194.03125

    3.  Hints and Answers    298.796875

    4.  Hints and Answers    16.1240234375

  4. Convert the following decimal fractions to binary with a maximum of six places to the right of the binary point:

    1. 25.84375

    2. 57.55

    3. 80.90625

    4. 84.874023

  5. Represent the following decimal numbers in binary using 8-bit signed magnitude, one's complement, and two's complement:

    1.  Hints and Answers    77

    2.  Hints and Answers    42

    3. 119

    4. 107

  6. Using a "word" of 3 bits, list all of the possible signed binary numbers and their decimal equivalents that are representable in:

    1. Signed magnitude

    2. One's complement

    3. Two's complement

  7. Using a "word" of 4 bits, list all of the possible signed binary numbers and their decimal equivalents that are representable in:

    1. Signed magnitude

    2. One's complement

    3. Two's complement

  8. From the results of the previous two questions, generalize the range of values (in decimal) that can be represented in any given x number of bits using:

    1. Signed magnitude

    2. One's complement

    3. Two's complement

  9. Given a (very) tiny computer that has a word size of 6 bits, what are the smallest negative numbers and the largest positive numbers that this computer can represent in each of the following representations?

    1.  Hints and Answers    One's complement

    2. Two's complement

  10. You have stumbled on an unknown civilization while sailing around the world. The people, who call themselves Zebronians, do math using 40 separate characters (probably because there are 40 stripes on a zebra). They would very much like to use computers, but would need a computer to do Zebronian math, which would mean a computer that could represent all 40 characters. You are a computer designer and decide to help them. You decide the best thing is to use BCZ, Binary-Coded Zebronian (which is like BCD except it codes Zebronian, not Decimal). How many bits will you need to represent each character if you want to use the minimum number of bits?

  11. Perform the following binary multiplications:

    1.  Hints and Answers    



  12. Perform the following binary multiplications:




  13. Perform the following binary divisions:

    1.  Hints and Answers    101101 ÷ 101

    2. 10000001 ÷ 101

    3. 1001010010 ÷ 1011

  14. Perform the following binary divisions:

    1. 11111101 ÷ 1011

    2. 110010101 ÷ 1001

    3. 1001111100 ÷ 1100

  15.  Hints and Answers    Use the double-dabble method to convert 102123 directly to decimal. (Hint: you have to change the multiplier.)

  16. Using signed-magnitude representation, complete the following operations:

    + 0 + (-0) =

    (-0) + 0 =

    0 + 0 =

    (-0) + (-0) =

  17.  Hints and Answers    Suppose a computer uses 4-bit one's complement numbers. Ignoring overflows, what value will be stored in the variable j after the following pseudocode routine terminates?

    0  ®  j  // Store 0 in j.
    -3  ®  k  // Store -3 in k.
    while k ≠ 0
      j = j + 1
      k = k - 1
    end while 
  18. If the floating-point number storage on a certain system has a sign bit, a 3-bit exponent, and a 4-bit significand:

    1. What is the largest positive and the smallest negative number that can be stored on this system if the storage is normalized? (Assume no bits are implied, there is no biasing, exponents use two's complement notation, and exponents of all zeros and all ones are allowed.)

    2. What bias should be used in the exponent if we prefer all exponents to be nonnegative? Why would you choose this bias?

  19.  Hints and Answers    Using the model in the previous question, including your chosen bias, add the following floating-point numbers and express your answer using the same notation as the addend and augend:

    Calculate the relative error, if any, in your answer to the previous question.

  20. Assume we are using the simple model for floating-point representation as given in this book (the representation uses a 14-bit format, 5 bits for the exponent with a bias of 16, a normalized mantissa of 8 bits, and a single sign bit for the number):

    1. Show how the computer would represent the numbers 100.0 and 0.25 using this floating-point format.

    2. Show how the computer would add the two floating-point numbers in part a by changing one of the numbers so they are both expressed using the same power of 2.

    3. Show how the computer would represent the sum in part b using the given floating-point representation. What decimal value for the sum is the computer actually storing? Explain.

  21. What causes divide underflow and what can be done about it?

  22. Why do we usually store floating-point numbers in normalized form? What is the advantage of using a bias as opposed to adding a sign bit to the exponent?

  23. Let a = 1.0 x 29, b = -1.0 x 29 and c = 1.0 x 21. Using the floating-point model described in the text (the representation uses a 14-bit format, 5 bits for the exponent with a bias of 16, a normalized mantissa of 8 bits, and a single sign bit for the number), perform the following calculations, paying close attention to the order of operations. What can you say about the algebraic properties of floating-point arithmetic in our finite model? Do you think this algebraic anomaly holds under multiplication as well as addition?

    b + (a + c) =

    (b + a) + c =

    1. Given that the ASCII code for A is 1000001, what is the ASCII code for J?

    2. Given that the EBCDIC code for A is 1100 0001, what is the EBCDIC code for J?

  24.  Hints and Answers    Assume a 24-bit word on a computer. In these 24 bits, we wish to represent the value 295.

    1.  Hints and Answers    If our computer uses even parity, how would the computer represent the decimal value 295?

    2.  Hints and Answers    If our computer uses 8-bit ASCII and even parity, how would the computer represent the string 295?

    3.  Hints and Answers    If our computer uses packed BCD, how would the computer represent the number +295?

  25. Decode the following ASCII message, assuming 7-bit ASCII characters and no parity: 1001010 1001111 1001000 1001110 0100000 1000100 1000101

  26.  Hints and Answers    Why would a system designer wish to make Unicode the default character set for their new system? What reason(s) could you give for not using Unicode as a default?

  27. Write the 7-bit ASCII code for the character 4 using the following encoding:

    1. Non-return-to-zero

    2. Non-return-to-zero-invert

    3. Manchester code

    4. Frequency modulation

    5. Modified frequency modulation

    6. Run length limited

      (Assume 1 is "high," and 0 is "low.")

  28. Why is NRZ coding seldom used for recording data on magnetic media?

  29. Assume we wish to create a code using 3 information bits, 1 parity bit (appended to the end of the information), and odd parity. List all legal code words in this code. What is the Hamming distance of your code?

  30. Are the error-correcting Hamming codes systematic? Explain.

  31.  Hints and Answers    Compute the Hamming distance of the following code:

    0011010010111100

    0000011110001111

    0010010110101101

    0001011010011110

  32. Compute the Hamming distance of the following code:

    0000000101111111

    0000001010111111

    0000010011011111

    0000100011101111

    0001000011110111

    0010000011111011

    0100000011111101

    1000000011111110

  33. Suppose we want an error-correcting code that will allow all single-bit errors to be corrected for memory words of length 10.

    1. How many parity bits are necessary?

    2. Assuming we are using the Hamming algorithm presented in this chapter to design our error-correcting code, find the code word to represent the 10-bit information word: 1001100110.

  34.  Hints and Answers    Suppose we are working with an error-correcting code that will allow all single-bit errors to be corrected for memory words of length 7. We have already calculated that we need 4 check bits, and the length of all code words will be 11. Code words are created according to the Hamming algorithm presented in the text. We now receive the following code word:

    1 0 1 0 1 0 1 1 1 1 0

    Assuming even parity, is this a legal code word? If not, according to our error-correcting code, where is the error?

  35. Repeat exercise 35 using the following code word:

    0 1 1 1 1 0 1 0 1 0 1

  36. Name two ways in which Reed-Soloman coding differs from Hamming coding.

  37. When would you choose a CRC code over a Hamming code? A Hamming code over a CRC?

  38.  Hints and Answers    Find the quotients and remainders for the following division problems modulo 2.

    1.  Hints and Answers    10101112 ÷ 11012

    2.  Hints and Answers    10111112 ÷ 111012

    3.  Hints and Answers    10110011012 ÷ 101012

    4.  Hints and Answers    1110101112 ÷ 101112

  39. Find the quotients and remainders for the following division problems modulo 2.

    1. 11110102 ÷ 10112

    2. 10101012 ÷ 11002

    3. 11011010112 ÷ 101012

    4. 11111010112 ÷ 1011012

  40.  Hints and Answers    Using the CRC polynomial 1011, compute the CRC code word for the information word, 1011001. Check the division performed at the receiver.

  41. Using the CRC polynomial 1101, compute the CRC code word for the information word, 01001101. Check the division performed at the receiver.

  42.  *   Pick an architecture (such as 80486, Pentium, Pentium IV, SPARC, Alpha, or MIPS). Do research to find out how your architecture approaches the concepts introduced in this chapter. For example, what representation does it use for negative values? What character codes does it support?


Team LiB
Previous Section Next Section
Linking to Www Google.Com. Host by Book Fire