Skip to ContentGo to accessibility pageKeyboard shortcuts menu
OpenStax Logo

Review Questions

1 .
What is the difference between CPU and ALU?
2 .
What is the difference between the processor used in your smartphone and the one used in your desktop, tablet, or laptop computer?
3 .
What is the definition of abstraction?
  1. a piece of software that takes a program written in a given HLL and generates another program
  2. the most evolved method by which a human can direct a computer on how to perform tasks and applications
  3. the set of instructions recognized by each processor family
  4. removal of unimportant elements of a program or computer code that distract from its process
4 .
What is the term for the technique the OS uses to isolate different programs from each other so they do not overwrite each other’s data or corrupt each other’s files?
  1. virtual memory
  2. scheduling
  3. neuromorphic computer
  4. assembler
5 .
Why do computers only work with 1s and 0s?
6 .
Why is the OS the only software allowed to access the hardware?
7 .
Do a big supercomputer and small budget laptop use the same levels of abstraction?
8 .
What type of number would we need to represent the number of marbles in a bag?
  1. signed integer
  2. unsigned integer
  3. floating point number
  4. Boolean number
9 .
What type of number would we need to represent the temperature outside to the nearest whole number?
  1. signed integer
  2. unsigned integer
  3. floating point number
  4. Boolean number
10 .
What type of number would we need to represent the amount of money in a bank account?
  1. signed integer
  2. unsigned integer
  3. floating point number
  4. Boolean number
11 .
What is the two’s complement of the binary number 11100101?
  1. 01100101
  2. 11100100
  3. 00011010
  4. 00011011
12 .
What is the one’s complement of the binary number 10100010?
  1. 00100010
  2. 10100011
  3. 01011101
  4. 01011110
13 .
If you see a series of bits, can you know whether they present a signed or an unsigned integer, a floating point, or a character?
14 .
Why do we need unsigned integers?
15 .
What is the purpose of a linker?
  1. A linker puts the executable into memory and arranges its content in a specific way to make it ready for execution by the processor.
  2. A linker tells a program if a condition has been met.
  3. A linker takes all the generated object files, looks for needed libraries, and then links everything together in one executable file.
  4. A linker is a register that keeps track of instructions to be executed.
16 .
What is the output of the assembler called?
  1. object code
  2. source code
  3. dynamic library
  4. static library
17 .
What stores dynamically allocated data?
  1. stack
  2. register
  3. bus
  4. heap
18 .
Why do you need to learn assembly programming?
19 .
What is the main philosophy behind CISC?
20 .
What is the main philosophy behind RISC?
21 .
What technology do we use to build a cache?
  1. static random access memory (SRAM)
  2. NAND gate
  3. dynamic random access memory (DRAM)
  4. solid state drive (SSD)
22 .
What technology do we use to build memory?
  1. static random-access memory (SRAM)
  2. NAND bate
  3. dynamic random-access memory (DRAM)
  4. solid state drive (SSD)
23 .
What term means that, when the cache is empty, it does not have the needed data?
  1. cache hit
  2. cache memory
  3. cache miss
  4. cache reset
24 .
Why is it necessary to have multiple levels of cache memory?
  1. to make it harder for the CPU to obtain instructions from RAM
  2. to make it faster for the CPU to obtain data from RAM
  3. just in case one level of cache fails
  4. to be able to execute instructions in parallel
25 .
Is programming a single core or multicore easier? Why?
26 .
Why did the industry move to multicore?
27 .
What is the term used to describe when two or more programs execute on the processor at the same time?
  1. temporal parallelism
  2. spatial parallelism
  3. simultaneous multithreading (SMT)
  4. superscalar capability
Citation/Attribution

This book may not be used in the training of large language models or otherwise be ingested into large language models or generative AI offerings without OpenStax's permission.

Want to cite, share, or modify this book? This book uses the Creative Commons Attribution License and you must attribute OpenStax.

Attribution information
  • If you are redistributing all or part of this book in a print format, then you must include on every physical page the following attribution:
    Access for free at https://openstax.org/books/introduction-computer-science/pages/1-introduction
  • If you are redistributing all or part of this book in a digital format, then you must include on every digital page view the following attribution:
    Access for free at https://openstax.org/books/introduction-computer-science/pages/1-introduction
Citation information

© Oct 29, 2024 OpenStax. Textbook content produced by OpenStax is licensed under a Creative Commons Attribution License . The OpenStax name, OpenStax logo, OpenStax book covers, OpenStax CNX name, and OpenStax CNX logo are not subject to the Creative Commons license and may not be reproduced without the prior and express written consent of Rice University.