Skip to content

ICS 2023 Review Chap 1

  • 1.abstraction: a technique for establishing a simpler way for a person to interact with a system, removing the details that are unnecessary for the person to interact effectively with the system. We all need the ability to abstract. Hardware and software: we need to know both of them, instead of seperating them.
  • A computer system generally includes, in addition to the processor, a keyboard for typing commands, a mouse or keypad or joystick for positioning on menu entries, a monitor for displaying information that the computer system has produced, memory for temporarily storingv information, disks and USB memory sticks of one sort or another forstoring information for a very long time, even after the computer has been turned off,connections to other devices such as a printer for obtaining paper copies of that information, and the collection of programs(the software) that the user wishes to execute.
  • Two important ideas:(1)All computers are capable of computing exactly the same things if they are given enough time and enough memory. The only difference is the time.(2) (in Chinese) 计算机无法直接领悟自然语言,所以我们需要用一种计算机能够执行的语言去指导计算机解决问题。
  • Before modern digital computers, the most common digital machines in the West were adding machines that can add integers. In other parts of the world another digital machine, the abacus, was common. The main limitation of all these machines is that they could do only one specific kind of computation.
  • This is why computers are different. You can tell a computer how to add numbers. You can tell it how to multiply. You can tell it how to alphabetize a list or perform any computation you like. When you think of a new kind of computation, you do not have to buy or design a new computer. You just give the old computer a new set of instructions (a program) to carry out the new computation. This is why we say the computer is a universal computational device. Computer scientists believe that anything that can be computed, can be computed by a computer provided it has enough time and enough memory. When we study computers, we study the fundamentals of all computing. We learn what computation is and what can be computed.
  • 教材在该章节之后的内容提到了图灵机,我不知道如何用简洁的语言提炼内涵,所以我就摘抄最核心的这么一句话:“One way to try to construct a machine more powerful than any particular Turing machine was to make a machine U that could simulate all Turing machines."

Untitled

  • Problems: described in natural language(e.g. English or Chinese), which are unacceptble for computers. One reason is the ambiguity.
  • Algorithms: We first need to transform the natural language description of a problem to algorithm. Here are the properties of the algorithm:
  • (1) definiteness. Each step is precisely stated. In Chinese we say 确定性, 即每一步都是确定的,无歧义的。
  • (2) effective computability. Each step can be carried out by a computer. 可算性,每一步都能被电脑操作运行。
  • (3) finiteness. 有限性, 也就是说算法是可以也终将会被中止的。
  • Program: there are programming languages like C or C++. In fact there are more than 1,000 programming languages. We need to transform the algorithm into a computer program using one of them. There are high-level and low-level languages. One representative low-level language is assembly language.

    Untitled

  • ISA: it is the complete specification of the interface between programs that have been written and the underlying computer hardware that must carry out the work of those programs.

  • Sequence of 0s and 1s(the length is 16 in LC-3), which specifies the acceptable representations for operands and the mechanisms that the computer can use to figure out where the operands are located.
  • The number of opcodes,data types,and addressing modes specified by an ISA vary among different ISAs.
  • Microarchitecture (or implementation) is the digital logic that allows an instruction set to be executed. A microarchitecture is the physical implementation of an instruction set.
  • Each microarchitecture is an opportunity for computer designers to make different tradeoffs between the cost of the microprocessor, the performance that microprocessor will provide, and the energy that is required to power the microprocessor.

(From 修佬)微架构和上面提到的指令集有点像“现实与虚拟”交界处的两个守门人。对于 ISA 来说,微架构是它的电路实现,你可以有不同的电路,拿一个指令对应什么事情,这些是不能改变的,所以说 ISA 可以对应多个微架构,但是一个微架构只能对应一个 ISA。

  • Logic Circuit: let’s talk about it in chapter 3.
  • Devices