Skip to ContentGo to accessibility pageKeyboard shortcuts menu
OpenStax Logo

Review Questions

1 .
What is the difference between machine code and assembly language?
  1. Machine code is written in a textual format, while assembly language is written in hexadecimal.
  2. Machine code is executed directly by the CPU, while assembly language must be interpreted.
  3. Machine code is written in binary, while assembly language is written in a textual format.
  4. Machine code and assembly language both require a compiler to be executed.
2 .
Why are middle-level programming languages like C important?
  1. They are used exclusively for Web development.
  2. They are used to create systems software, such as operating system kernels.
  3. They do not allow access to hardware features.
  4. They are used only for academic purposes.
3 .
What is an advantage of high-level programming over low-level programming?
  1. High-level programming languages are less time-consuming for the programmer.
  2. High-level programming languages are slower.
  3. High-level programming languages have a lower level of abstraction.
  4. High-level languages offer less security and reliability.
4 .
What defines the order of code execution in the imperative programming paradigm?
  1. the compiler
  2. data flow and transformations
  3. the steps in the code
  4. There is no specific order of execution.
5 .
What is the difference between an IDE and a development environment that is not an IDE?
  1. An IDE is a single tool for coding, while a non-IDE environment requires no tools.
  2. An IDE bundles all of the tools into one app with a graphical interface, while a non-IDE environment is a collection of several tools.
  3. An IDE uses only command-line programs, while a non-IDE environment uses graphical tools.
  4. A non-IDE environment uses graphical tools only.
6 .
What is a critical step that a programmer must focus on when participating in the development of a C program?
  1. planning the development
  2. documenting the code
  3. fully testing the code
  4. generating code
7 .
What is “ELF” in C programming?
  1. a function library for C programs
  2. an error logging framework in C
  3. a coding standard for writing C programs
  4. a file format for object code
8 .
Why is linking necessary in C programming?
  1. to combine separate object files into a single executable or library
  2. to compile the source code into object code
  3. to debug the program before it is executed
  4. to run the compiled program on the operating system
9 .
What is a core?
  1. a type of memory used for storing data in a computer
  2. an individual processor in a CPU chip that can execute instructions
  3. a program that runs on a computer
  4. a software module that manages system resources
10 .
What is a thread in the context of computing?
  1. a single task that executes on a core
  2. a component that stores data in a database
  3. a network connection between two computers
  4. a type of memory used in parallel computing
11 .
What are the roles of a parent thread and child thread in parallel computing?
  1. The child thread starts other threads and manages the program’s execution.
  2. The parent thread performs tasks assigned by the child thread.
  3. The parent thread starts child threads, monitors them, and cleans the program.
  4. Both parent and child threads perform the same tasks simultaneously.
12 .
What are examples of parallel programming models?
  1. single-threaded and multi-threaded
  2. interpreter and compiler
  3. input/output and file systems
  4. shared memory and message passing
13 .
What is firmware?
  1. a code that interacts with hardware devices
  2. a type of high-level software with high abstraction
  3. an operating system that runs on embedded devices
  4. a hardware component that updates software
14 .
Why is it recommended to start with simple hardware kits when learning embedded systems engineering?
  1. Simple kits provide advanced processors.
  2. Simple kits are intended for industrial use and can be used for complex processes.
  3. Simple kits allow users to build digital circuit design and explore firmware development.
  4. Simple kits require extensive prior knowledge of x86-64 architecture.
15 .
What features does the Rust programming language offer that makes Rust more desirable then C?
  1. Since the language is object oriented, there is higher level data types.
  2. Rust is a high-level language, so it tends to be more readable.
  3. Rust provides a standard library and C does not.
  4. Has the same positive features of C and includes new features supporting higher level data types and parallel programming.
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.