Skip to content · ⁨コンテンツへスキップ⁩
Subjects · ⁨科目⁩

IGCSE Computer Science · ⁨IGCSE コンピューター科学⁩

Tips · ⁨ヒント⁩

IGCSE Computer Science (0478) has ten topics across two papers: data representation, data transmission, hardware, software, the internet, automated and emerging technologies, algorithm design, programming, databases and Boolean logic.

Paper 1 is theory, marked on precise vocabulary — the difference between RAM and ROM, a compiler and an interpreter, validation and verification. These are definition marks, and a paraphrase usually misses them.

Paper 2 is problem-solving and programming, where marks go to a working method: trace tables, pseudocode, and code that would actually run. Secure number bases and binary arithmetic first — they appear on their own and again inside data transmission, logic and hardware.

  • 1

    Data representation · ⁨データの表現⁩

    Watch lesson · ⁨レッスンを視聴⁩
    1.1

    Why computers use binary

    English

    A computer can only work with two states: on and off. You write these as 1 and 0. A system that uses only two digits 数字 is called binary 二进制 (base 2).

    Every kind of data 数据 — numbers, text, sound and images — must be changed into binary before a computer can use it. The computer processes this binary using logic gates 逻辑门, and stores it in registers 寄存器 (small, fast stores inside the processor 处理器).

    日本語

    A computer can only work with two states: on and off. You write these as 1 and 0. A system that uses only two digits 数字 is called binary 二进制 (base 2).

    A field of blue binary digits, 0s and 1s
    Computers represent all data — numbers, text, sound and images — as binary strings of 0s and 1s

    Every kind of data 数据 — numbers, text, sound and images — must be changed into binary before a computer can use it. The computer processes this binary using logic gates 逻辑门, and stores it in registers 寄存器 (small, fast stores inside the processor 处理器).

    The silicon die of a microprocessor under magnification
    A microprocessor holds millions of tiny transistors, each a switch that is on (1) or off (0) — the physical basis of binary
    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    digit/ˈdɪdʒɪt/ 桁
    binary/ˈbaɪnəri/ バイナリ
    data/ˈdeɪtə/ データ
    logic gate/ˈlɒdʒɪk ɡeɪt/ 論理ゲート
    processor/ˈprəʊsesə/ プロセッサー
    register/ˈredʒɪstə/ レジスタ
    1.1

    Number systems

    Syllabus · ⁨シラバス⁩
    Candidates should be able to: Notes and guidance
    1 Understand how and why computers use binary to represent all forms of data • Any form of data needs to be converted to binary to be processed by a computer • Data is processed using logic gates and stored in registers
    2 (a) Understand the denary, binary and hexadecimal number systems (b) Convert between (i) positive denary and positive binary (ii) positive denary and positive hexadecimal (iii) positive hexadecimal and positive binary • Denary is a base 10 system • Binary is a base 2 system • Hexadecimal is a base 16 system • Values used will be integers only • Conversions in both directions, e.g. denary to binary or binary to denary • Maximum binary number length of 16-bit
    3 Understand how and why hexadecimal is used as a beneficial method of data representation • Areas within computer science that hexadecimal is used should be identified • Hexadecimal is easier for humans to understand than binary, as it is a shorter representation of binary
    4 (a) Add two positive 8-bit binary integers (b) Understand the concept of overflow and why it occurs in binary addition • An overflow error will occur if the value is greater than 255 in an 8-bit register • A computer or a device has a predefined limit that it can represent or store, for example 16-bit • An overflow error occurs when a value outside this limit should be returned
    5 Perform a logical binary shift on a positive 8-bit binary integer and understand the effect this has on the positive binary integer • Perform logical left shifts • Perform logical right shifts • Perform multiple shifts • Bits shifted from the end of the register are lost and zeros are shifted in at the opposite end of the register • The positive binary integer is multiplied or divided according to the shift performed • The most significant bit(s) or least significant bit(s) are lost
    6 Use the two’s complement number system to represent positive and negative 8-bit binary integers • Convert a positive binary or denary integer to a two’s complement 8-bit integer and vice versa • Convert a negative binary or denary integer to a two’s complement 8-bit integer and vice versa

    Source: Cambridge International syllabus · ⁨出典: Cambridge International シラバス⁩

    English
    Counting in binary: 0 to 15

    A number system 数制 is a way of writing numbers using a fixed set of digits. You need three of them.

    System Base Digits used
    Denary 10 0–9
    Binary 2 0 and 1
    Hexadecimal 16 0–9 then A–F
    • denary 十进制 is the normal counting system (also called decimal).
    • binary uses only 0 and 1.
    • hexadecimal 十六进制 (hex) uses sixteen digits: 0–9, then A, B, C, D, E, F stand for 10, 11, 12, 13, 14, 15.

    The base 基数 tells you how many different digits a system uses.

    Place value

    Each column in a number has a place value 位值. In binary the place values double from right to left. For an 8-bit number they are:

    One bit 位 is a single 0 or 1. Eight bits make one byte 字节. Four bits (half a byte) is a nibble 半字节.

    Converting between number systems

    Denary → binary. Write the place values. Put a 1 under each value you need so they add up to your number; put 0 under the rest.

    Example: change denary 150 to binary. $150 = 128 + 16 + 4 + 2$.

    So $150$ = 10010110.

    Binary → denary. Add the place values where there is a 1. 10010110 $= 128 + 16 + 4 + 2 = 150$.

    Hexadecimal → binary. Change each hex digit into its own 4-bit group (a nibble).

    Example: hex F08. $F = 1111$, $0 = 0000$, $8 = 1000$, so F08 = 1111 0000 1000.

    Binary → hexadecimal. Group the bits into nibbles of 4, starting from the right. Change each nibble to one hex digit.

    Denary → hexadecimal. The easy way is to change to binary first, then binary to hex.

    This table helps with the hex letters:

    Denary Binary Hex
    10 1010 A
    11 1011 B
    12 1100 C
    13 1101 D
    14 1110 E
    15 1111 F

    Cambridge questions use binary numbers up to 16 bits long.

    Worked example. Convert denary 100 to 8-bit binary, then to hexadecimal.

    $100 = 64 + 32 + 4$, so the binary is 01100100. Splitting into nibbles, 0110 0100 $= 6$ and $4$, so the hexadecimal is 64.

    Why hexadecimal is used

    Hex is shorter than binary and easier for people to read and write. One hex digit replaces 4 binary digits, so you make fewer mistakes. The value does not change — hex is just a shorter way to show the same binary.

    Computer scientists use hex for:

    • MAC addresses and IPv6 addresses
    • colour codes in HTML (for example #FF0000 is red)
    • memory addresses 内存地址 and error codes
    • showing the contents of memory (a "memory dump")
    日本語
    Counting in binary: 0 to 15

    A number system 数制 is a way of writing numbers using a fixed set of digits. You need three of them.

    System Base Digits used
    Denary 10 0–9
    Binary 2 0 and 1
    Hexadecimal 16 0–9 then A–F
    • denary 十进制 is the normal counting system (also called decimal).
    • binary uses only 0 and 1.
    • hexadecimal 十六进制 (hex) uses sixteen digits: 0–9, then A, B, C, D, E, F stand for 10, 11, 12, 13, 14, 15.

    The base 基数 tells you how many different digits a system uses.

    Place value

    Each column in a number has a place value 位值. In binary the place values double from right to left. For an 8-bit number they are:

    128  64  32  16  8  4  2  1
    
    An 8-bit place-value chart with values 128 down to 1, and the bits of 150 placed under the columns that sum to 150
    An 8-bit place-value chart: the 1s sit under the values that add up to 150

    One bit 位 is a single 0 or 1. Eight bits make one byte 字节. Four bits (half a byte) is a nibble 半字节.

    Converting between number systems

    Denary → binary. Write the place values. Put a 1 under each value you need so they add up to your number; put 0 under the rest.

    Example: change denary 150 to binary. $150 = 128 + 16 + 4 + 2$.

    128 64 32 16 8 4 2 1
      1  0  0  1 0 1 1 0
    

    So $150$ = 10010110.

    Binary → denary. Add the place values where there is a 1. 10010110 $= 128 + 16 + 4 + 2 = 150$.

    Hexadecimal → binary. Change each hex digit into its own 4-bit group (a nibble).

    Example: hex F08. $F = 1111$, $0 = 0000$, $8 = 1000$, so F08 = 1111 0000 1000.

    Three hexadecimal digits F, 0 and 8, each with an arrow down to its own group of four bits
    Each hex digit maps to its own 4-bit nibble — F08 = 1111 0000 1000

    Binary → hexadecimal. Group the bits into nibbles of 4, starting from the right. Change each nibble to one hex digit.

    Denary → hexadecimal. The easy way is to change to binary first, then binary to hex.

    This table helps with the hex letters:

    Denary Binary Hex
    10 1010 A
    11 1011 B
    12 1100 C
    13 1101 D
    14 1110 E
    15 1111 F

    Cambridge questions use binary numbers up to 16 bits long.

    Worked example. Convert denary 100 to 8-bit binary, then to hexadecimal.

    $100 = 64 + 32 + 4$, so the binary is 01100100. Splitting into nibbles, 0110 0100 $= 6$ and $4$, so the hexadecimal is 64.

    Why hexadecimal is used

    Hex is shorter than binary and easier for people to read and write. One hex digit replaces 4 binary digits, so you make fewer mistakes. The value does not change — hex is just a shorter way to show the same binary.

    Computer scientists use hex for:

    • MAC addresses and IPv6 addresses
    • colour codes in HTML (for example #FF0000 is red)
    • memory addresses 内存地址 and error codes
    • showing the contents of memory (a "memory dump")
    Explore · ⁨探索⁩

    Binary, denary and hex

    Type a number and see it in binary, denary and hex — and how the place values build it.

    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    number system/ˈnʌmbə ˈsɪstəm/ 進位法
    denary/ˈdiːnəri/ 十進
    hexadecimal/ˌheksəˈdesɪml/ 十六進法
    base/beɪs/ 底
    place value/pleɪs ˈvæljuː/ 位取り記数法
    bit/bɪt/ ビット
    byte/baɪt/ バイト
    nibble/ˈnɪbl/ ニブル
    memory address/ˈmeməri əˈdres/ メモリアドレス
    1.1

    Binary addition

    English

    You can add two 8-bit binary numbers, column by column from the right, just like denary. The rules for one column are:

    A B Result bit Carry
    0 0 0 0
    0 1 1 0
    1 0 1 0
    1 1 0 1

    When a carry also comes in, $1 + 1 + 1 = 1$ with a carry of 1.

    Example: add 01110110 (118) and 00110000 (48).

    Overflow

    An 8-bit register can hold denary values from 0 to 255 only. If an addition gives a result above 255, the answer needs a 9th bit. The register cannot hold this extra bit, so it is lost. This is called overflow 溢出 (an overflow error). It happens when a value goes outside the limit the register can store.

    Example: 11001000 (200) $+$ 01001000 (72) $= 272$. In binary that is 1 00010000, which needs 9 bits. The leading 1 will not fit in 8 bits, so the stored answer is wrong.

    日本語

    You can add two 8-bit binary numbers, column by column from the right, just like denary. The rules for one column are:

    A B Result bit Carry
    0 0 0 0
    0 1 1 0
    1 0 1 0
    1 1 0 1

    When a carry also comes in, $1 + 1 + 1 = 1$ with a carry of 1.

    Example: add 01110110 (118) and 00110000 (48).

      0 1 1 1 0 1 1 0    (118)
    + 0 0 1 1 0 0 0 0    (48)
    -------------------
      1 0 1 0 0 1 1 0    (166)
    
    8-bit binary addition of 118 and 48 with the carry bits shown in red above the left columns, giving 166
    Adding column by column; the carries ripple to the left. 118 + 48 = 166

    Overflow

    An 8-bit register can hold denary values from 0 to 255 only. If an addition gives a result above 255, the answer needs a 9th bit. The register cannot hold this extra bit, so it is lost. This is called overflow 溢出 (an overflow error). It happens when a value goes outside the limit the register can store.

    Example: 11001000 (200) $+$ 01001000 (72) $= 272$. In binary that is 1 00010000, which needs 9 bits. The leading 1 will not fit in 8 bits, so the stored answer is wrong.

    Adding 200 and 72 gives 272, which in binary needs nine bits; the eight-bit register keeps only the lower eight and loses the ninth bit, so the stored answer is 16 not 272
    Adding 200 and 72 needs 9 bits, but an 8-bit register drops the ninth, so the answer is wrong
    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    overflow/ˌəʊvəˈfləʊ/ オーバーフロー
    1.1

    Logical binary shift

    English

    A logical binary shift 逻辑二进制移位 moves all the bits left or right by a number of places.

    • Bits that move off the end of the register are lost.
    • Zeros are added at the empty end.

    A left shift multiplies the number by 2 for each place moved. A right shift divides it by 2 for each place; the right-most bits (the least significant bit(s) 最低有效位) are lost.

    Example: left shift 00110101 (53) by 2 places.

    The result is 11010100 (212), which is $53 \times 4$. The two left-most bits were lost and two zeros came in on the right. If a 1 is pushed off the end, that information is gone for good.

    日本語

    A logical binary shift 逻辑二进制移位 moves all the bits left or right by a number of places.

    • Bits that move off the end of the register are lost.
    • Zeros are added at the empty end.

    A left shift multiplies the number by 2 for each place moved. A right shift divides it by 2 for each place; the right-most bits (the least significant bit(s) 最低有效位) are lost.

    Example: left shift 00110101 (53) by 2 places.

    start:         0 0 1 1 0 1 0 1
    left shift 2:  1 1 0 1 0 1 0 0
    
    A logical left shift of two places: arrows move each bit two columns left, the two left-most bits are lost and two zeros enter on the right
    A left shift of 2: every bit moves 2 places left, the top bits are lost and zeros fill the right

    The result is 11010100 (212), which is $53 \times 4$. The two left-most bits were lost and two zeros came in on the right. If a 1 is pushed off the end, that information is gone for good.

    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    logical binary shift/ˈlɒdʒɪkl ˈbaɪnəri ʃɪft/ ロジカルバイナリシフト
    least significant bit/liːst sɪɡˈnɪfɪkənt bɪt/ 最下位ビット
    1.1

    Two's complement

    English

    So far the numbers were positive. Two's complement 补码 lets an 8-bit register hold negative numbers too.

    In two's complement, the left-most bit (the most significant bit 最高有效位, or MSB) has a negative place value:

    • If the MSB is 0, the number is positive.
    • If the MSB is 1, the number is negative.

    To make a positive number negative: write the positive binary, flip every bit (0↔1), then add 1.

    Example: make $-40$.

    • $+40$ = 00101000
    • flip the bits = 11010111
    • add 1 = 11011000

    So $-40$ = 11011000. Check by adding the place values: $-128 + 64 + 16 + 8 = -40$.

    To read a negative two's complement number, just add the place values (the MSB counts as $-128$). The range of an 8-bit two's complement number is $-128$ to $+127$.

    日本語

    So far the numbers were positive. Two's complement 补码 lets an 8-bit register hold negative numbers too.

    In two's complement, the left-most bit (the most significant bit 最高有效位, or MSB) has a negative place value:

    -128  64  32  16  8  4  2  1
    
    • If the MSB is 0, the number is positive.
    • If the MSB is 1, the number is negative.

    To make a positive number negative: write the positive binary, flip every bit (0↔1), then add 1.

    Example: make $-40$.

    • $+40$ = 00101000
    • flip the bits = 11010111
    • add 1 = 11011000

    So $-40$ = 11011000. Check by adding the place values: $-128 + 64 + 16 + 8 = -40$.

    A two's complement 8-bit chart where the most significant bit is worth minus 128, with 11011000 highlighted to give minus 40
    The most significant bit is worth −128, so 11011000 = −128 + 64 + 16 + 8 = −40

    To read a negative two's complement number, just add the place values (the MSB counts as $-128$). The range of an 8-bit two's complement number is $-128$ to $+127$.

    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    two's complement/tuːz ˈkɒmplɪmənt/ 補数表示
    most significant bit/məʊst sɪɡˈnɪfɪkənt bɪt/ 最上位ビット
    1.2

    Representing text

    Syllabus · ⁨シラバス⁩
    Candidates should be able to: Notes and guidance
    1 Understand how and why a computer represents text and the use of character sets, including American standard code for information interchange (ASCII) and Unicode • Text is converted to binary to be processed by a computer • Unicode allows for a greater range of characters and symbols than ASCII, including different languages and emojis • Unicode requires more bits per character than ASCII
    2 Understand how and why a computer represents sound, including the effects of the sample rate and sample resolution • A sound wave is sampled for sound to be converted to binary, which is processed by a computer • The sample rate is the number of samples taken in a second • The sample resolution is the number of bits per sample • The accuracy of the recording and the file size increases as the sample rate and resolution increase
    3 Understand how and why a computer represents an image, including the effects of the resolution and colour depth • An image is a series of pixels that are converted to binary, which is processed by a computer • The resolution is the number of pixels in the image • The colour depth is the number of bits used to represent each colour • The file size and quality of the image increase as the resolution and colour depth increase

    Source: Cambridge International syllabus · ⁨出典: Cambridge International シラバス⁩

    English

    Computers store text by giving every character a number, then storing that number in binary. The set of characters a computer can use, together with their numbers, is a character set 字符集.

    • ASCII uses 7 bits per character, so it has 128 different characters. This is enough for English letters, digits and common symbols.
    • Unicode uses more bits per character. It can represent far more characters — many languages, plus symbols and emoji 表情符号.

    Because Unicode has more characters, it needs more bits per character than ASCII, so the same text takes more storage 存储.

    日本語

    Computers store text by giving every character a number, then storing that number in binary. The set of characters a computer can use, together with their numbers, is a character set 字符集.

    • ASCII uses 7 bits per character, so it has 128 different characters. This is enough for English letters, digits and common symbols.
    • Unicode uses more bits per character. It can represent far more characters — many languages, plus symbols and emoji 表情符号.

    Because Unicode has more characters, it needs more bits per character than ASCII, so the same text takes more storage 存储.

    ASCII uses seven bits per character for 128 characters, enough for English; Unicode uses more bits per character for far more characters including many languages and emoji, but takes more storage
    ASCII uses 7 bits for 128 characters; Unicode uses more bits for far more characters but more storage
    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    character set/ˈkærɪktə set/ 文字集合
    emoji/ɪˈməʊdʒi/ 絵文字
    storage/ˈstɔːrɪdʒ/ ストレージ
    1.2

    Representing sound

    English

    A sound wave 声波 is smooth and always changing. To store it, the computer measures the height of the wave at regular moments. This is called sampling 采样, and each measurement is a sample.

    • sample rate 采样率 is the number of samples taken each second (measured in Hz).
    • sample resolution 采样分辨率 is the number of bits used for each sample. The height of the wave at a sample point is its amplitude 振幅.

    A higher sample rate and a higher sample resolution give a more accurate recording, but a larger file.

    日本語

    A sound wave 声波 is smooth and always changing. To store it, the computer measures the height of the wave at regular moments. This is called sampling 采样, and each measurement is a sample.

    A smooth sound wave with vertical lines at regular time intervals measuring its height, marking the sample interval and the amplitude
    Sampling records the wave's height (amplitude) at regular moments
    • sample rate 采样率 is the number of samples taken each second (measured in Hz).
    • sample resolution 采样分辨率 is the number of bits used for each sample. The height of the wave at a sample point is its amplitude 振幅.

    A higher sample rate and a higher sample resolution give a more accurate recording, but a larger file.

    Explore · ⁨探索⁩

    Representing sound

    y = a sin(bt + c)

    Sound is a wave; sampling records its height many times a second.

    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    sound wave/saʊnd weɪv/ 音波
    sampling/ˈsæmplɪŋ/ サンプリング
    sample rate/ˈsæmpl reɪt/ サンプルレート
    sample resolution/ˈsæmpl ˌrezəˈluːʃn/ サンプル分解能
    amplitude/ˈæmplɪtjuːd/ 振幅
    1.2

    Representing images

    English

    A computer image is made of a grid of small dots called pixels 像素.

    • resolution 分辨率 is the number of pixels in the image (for example $1920 \times 1080$).
    • colour depth 颜色深度 is the number of bits used to store the colour of each pixel.

    A higher resolution and a higher colour depth give a better-quality image, but a larger file.

    日本語

    A computer image is made of a grid of small dots called pixels 像素.

    An 8 by 8 grid of pixels forming a simple coloured picture, with one square labelled as one pixel
    A bitmap is a grid of pixels; the resolution is how many pixels it has
    • resolution 分辨率 is the number of pixels in the image (for example $1920 \times 1080$).
    • colour depth 颜色深度 is the number of bits used to store the colour of each pixel.

    A higher resolution and a higher colour depth give a better-quality image, but a larger file.

    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    pixel/ˈpɪksl/ ピクセル
    resolution/ˌrezəˈluːʃn/ 分解能
    colour depth/ˈkʌlə depθ/ カラー深度
    1.3

    Measuring data storage

    Syllabus · ⁨シラバス⁩
    Candidates should be able to: Notes and guidance
    1 Understand how data storage is measured • Including: – bit – nibble – byte – kibibyte (KiB) – mebibyte (MiB) – gibibyte (GiB) – tebibyte (TiB) – pebibyte (PiB) – exbibyte (EiB) • The amount of the previous denomination present in the data storage size, e.g.: – 8 bits in a byte – 1024 mebibytes in a gibibyte
    2 Calculate the file size of an image file and a sound file, using information given • Answers must be given in the units specified in the question. Calculations must use the measurement of 1024 and not 1000 • Information given may include: – image resolution and colour depth – sound sample rate, resolution and length of track
    3 Understand the purpose of and need for data compression • Compression exists to reduce the size of the file • What the impact of this is, e.g.: – less bandwidth required – less storage space required – shorter transmission time
    4 Understand how files are compressed using lossy and lossless compression methods • Lossy compression reduces the file size by permanently removing data, e.g. reducing resolution or colour depth, reducing sample rate or resolution • Lossless compression reduces the file size without permanent loss of data, e.g. run length encoding (RLE)

    Source: Cambridge International syllabus · ⁨出典: Cambridge International シラバス⁩

    Data storage is measured in the units below. A nibble is 4 bits and a byte is 8 bits; from the kibibyte upward, each unit is 1024 times the one before it (because $1024 = 2^{10}$, which fits binary).

    Unit Equals
    bit a single 0 or 1
    nibble 4 bits
    byte 8 bits
    kibibyte (KiB) 1024 bytes
    mebibyte (MiB) 1024 KiB
    gibibyte (GiB) 1024 MiB
    tebibyte (TiB) 1024 GiB
    pebibyte (PiB) 1024 TiB
    exbibyte (EiB) 1024 PiB
    Hard-disk platters: storage is measured in bytes — knowing file size needs width × height × colour depth for images
    Hard-disk platters: storage is measured in bytes — knowing file size needs width × height × colour depth for images
    Watch lesson · ⁨レッスンを視聴⁩
    1.3

    Calculating file size

    Image file size (in bits) $=$ resolution $\times$ colour depth $=$ width $\times$ height $\times$ colour depth.

    Example: an image is $1024 \times 1024$ pixels with a colour depth of 2 bytes ($= 16$ bits).

    • bits $= 1024 \times 1024 \times 16 = 16\,777\,216$ bits
    • bytes $= \div 8 = 2\,097\,152$ bytes
    • KiB $= \div 1024 = 2048$ KiB
    • MiB $= \div 1024 = 2$ MiB

    Sound file size (in bits) $=$ sample rate $\times$ sample resolution $\times$ length in seconds.

    Always divide by 1024 (not 1000) to change to KiB, MiB and so on. Give your answer in the unit the question asks for.

    Worked example. A sound is recorded for 30 seconds at a sample rate of 8,000 Hz with a sample resolution of 16 bits. Find the file size in kibibytes (KiB).

    • bits $= 8\,000 \times 16 \times 30 = 3\,840\,000$ bits
    • bytes $= 3\,840\,000 \div 8 = 480\,000$ bytes
    • KiB $= 480\,000 \div 1024 \approx 469$ KiB
    1.3

    Compression

    English

    Compression 压缩 makes a file smaller. A smaller file:

    • uses less storage space,
    • needs less bandwidth 带宽 (the amount of data a connection can carry),
    • takes a shorter time to send (a shorter transmission 传输 time).

    There are two types.

    Lossless compression

    Lossless 无损 compression makes the file smaller with no permanent loss of data. The original file can be rebuilt exactly.

    One method is run-length encoding 行程编码 (RLE). It replaces a run of repeated values with one copy of the value and a count of how many times it repeats. For example WWWWWWWW (8 whites) is stored as "8 W". This works well when data has many repeats.

    Lossy compression

    Lossy 有损 compression makes the file much smaller by permanently removing some data. The removed data cannot be got back. For example:

    • reducing the resolution or colour depth of an image,
    • reducing the sample rate or sample resolution of a sound.

    Use lossless when you must keep every detail (text and program files). Use lossy for photos, music and video, where a small loss of quality is worth a much smaller file.

    日本語

    Compression 压缩 makes a file smaller. A smaller file:

    • uses less storage space,
    • needs less bandwidth 带宽 (the amount of data a connection can carry),
    • takes a shorter time to send (a shorter transmission 传输 time).

    There are two types.

    Lossless compression

    Lossless 无损 compression makes the file smaller with no permanent loss of data. The original file can be rebuilt exactly.

    One method is run-length encoding 行程编码 (RLE). It replaces a run of repeated values with one copy of the value and a count of how many times it repeats. For example WWWWWWWW (8 whites) is stored as "8 W". This works well when data has many repeats.

    A strip of 8 white then 4 red squares compressed into the pairs 8 W and 4 R
    Run-length encoding stores each run once as a count and a value

    Lossy compression

    Lossy 有损 compression makes the file much smaller by permanently removing some data. The removed data cannot be got back. For example:

    • reducing the resolution or colour depth of an image,
    • reducing the sample rate or sample resolution of a sound.

    Use lossless when you must keep every detail (text and program files). Use lossy for photos, music and video, where a small loss of quality is worth a much smaller file.

    Explore · ⁨探索⁩

    Run-length encoding

    Watch repeated symbols get squashed into a count — simple lossless compression.

    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    compression/kəmˈpreʃn/ 圧縮を使う
    bandwidth/ˈbændwɪdθ/ 帯域幅
    transmission/trænˈsmɪʃn/ 伝送
    lossless/ˈlɒsləs/ 無損
    run-length encoding/rʌn leŋθ enˈkəʊdɪŋ/ ラン長符号化
    lossy/ˈlɒsi/ 有損
    1.3

    Exam tips

    • Convert denary → binary by subtracting the place values (128, 64, 32 …); binary → denary by adding the place values that hold a 1.
    • To convert to hex, group the binary into nibbles of 4 bits from the right; each nibble is exactly one hex digit.
    • Overflow happens when a result needs more bits than the register has (an 8-bit register only holds 0–255), so the extra bit is lost.
    • File size in bits: for an image, width × height × colour depth; for sound, sample rate × resolution × seconds. Divide by 8 for bytes, then by 1024 for each larger unit.
    • Lossless compression keeps every bit (text; run-length encoding); lossy permanently removes data (photos, music) for a much smaller file.
  • 2

    Data transmission · ⁨データ転送⁩

    Watch lesson · ⁨レッスンを視聴⁩
    2.1

    What is data transmission?

    English

    Data transmission 数据传输 means moving data from one place to another — for example from your computer to a website, or from a phone to a printer.

    Data often travels along a cable. Two common ones are shown below.

    Before it is sent, the data is broken down into small, equal-sized pieces called packets 数据包. Each packet travels separately and they are put back together at the other end.

    Using packets has benefits:

    • if one packet is lost or damaged, only that packet is sent again, not the whole file;
    • packets can take different routes, so a busy or broken route can be avoided;
    • many users can share the same connection at the same time.
    日本語

    Data transmission 数据传输 means moving data from one place to another — for example from your computer to a website, or from a phone to a printer.

    Data often travels along a cable. Two common ones are shown below.

    A close-up of a network cable ending in a clear plastic plug with gold metal pins
    An Ethernet cable with an RJ45 plug, often used to carry data on a wired network
    A cable opened up to show the thin glass fibres inside, with a ruler for scale
    A fibre-optic cable carries data as pulses of light along thin glass fibres

    Before it is sent, the data is broken down into small, equal-sized pieces called packets 数据包. Each packet travels separately and they are put back together at the other end.

    Using packets has benefits:

    • if one packet is lost or damaged, only that packet is sent again, not the whole file;
    • packets can take different routes, so a busy or broken route can be avoided;
    • many users can share the same connection at the same time.
    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    data transmission/ˈdeɪtə trænˈsmɪʃn/ データ転送
    packets/ˈpækɪts/ パケット
    2.1

    The structure of a packet

    Syllabus · ⁨シラバス⁩
    English
    Candidates should be able to: Notes and guidance
    1 (a) Understand that data is broken down into packets to be transmitted
    (b) Describe the structure of a packet • A packet of data contains a: – packet header – payload – trailer • The packet header includes the: – destination address – packet number – originator’s address
    (c) Describe the process of packet switching • Data is broken down into packets • Each packet could take a different route • A router controls the route a packet takes • Packets may arrive out of order • Once the last packet has arrived, packets are reordered
    2 (a) Describe how data is transmitted from one device to another using different methods of data transmission • Including: – serial – parallel – simplex – half-duplex – full-duplex
    (b) Explain the suitability of each method of data transmission, for a given scenario • Including the advantages and disadvantages of each method
    3 Understand the universal serial bus (USB) interface and explain how it is used to transmit data • Including the benefits and drawbacks of the interface
    日本語
    受験者は以下的能力を備えているべきである: メモおよびガイドライン
    1 (a) データが転送のためにパケットに分割されることを理解する
    (b) パケットの構造を説明する • データのパケットには以下を含む:– パケットヘッダー – payload – トレイラー • パケットヘッダーには以下を含む:– 宛先アドレス – パケット番号 – 送信元アドレス
    (c) パケットスイッチングのプロセスを説明する • データはパケットに分割される • 各パケットは異なる経路を取る可能性がある • ルーターがパケットの経路を制御する • パケットは順序不同で到着することがある • 最終パケットが到着したら、パケットは再整列される
    2 (a) 異なるデータ転送方法を用いて、デバイス間でデータが如何に転送されるかを説明する • 以下を含む:– シリアル – パラレル – シンプルックス – ハーフデュプレックス – フルデュプレックス
    (b) 特定のシナリオにおいて、各データ転送方法の適性を説明する • 各方法の利点と欠点を以下に含む
    3 **ユニバーサルシリアルバス (USB)**インターフェースを理解し、それがどのようにデータ転送に使用されるかを説明する • インターフェースの利点と欠点を以下に含む

    Source: Cambridge International syllabus · ⁨出典: Cambridge International シラバス⁩

    English

    Every packet has three parts.

    Part What it holds
    packet header 包头 control information (see below)
    payload 有效载荷 the actual data being carried
    trailer 尾部 shows where the packet ends, plus an error check

    The packet header holds:

    • the sender's IP address 地址 (where the packet came from),
    • the receiver's IP address (where it is going),
    • the packet number (so the packets can be put back in the right order).
    日本語

    Every packet has three parts.

    A packet shown as three joined blocks — header, payload and trailer — with the header's contents listed below it
    A packet has a header, a payload (the data) and a trailer; the header carries the addresses and packet number
    Part What it holds
    packet header 包头 control information (see below)
    payload 有效载荷 the actual data being carried
    trailer 尾部 shows where the packet ends, plus an error check

    The packet header holds:

    • the sender's IP address 地址 (where the packet came from),
    • the receiver's IP address (where it is going),
    • the packet number (so the packets can be put back in the right order).
    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    packet header/ˈpækɪt ˈhedə/ パケットヘッダー
    payload/ˈpeɪləʊd/ ペイロード
    trailer/ˈtreɪlə/ トレーラー
    address/əˈdres/ アドレス
    2.1

    Packet switching

    English

    Packet switching 数据包交换 is the way packets are sent across a network.

    • Special devices called routers 路由器 read each packet's header and choose the best route for it.
    • Each packet may take its own path, so packets can travel different ways.
    • Packets may arrive out of order.
    • When the last packet has arrived, the packets are reordered using their packet numbers.
    日本語

    Packet switching 数据包交换 is the way packets are sent across a network.

    Two packets travelling from a sender to a receiver through a mesh of routers, each taking a different coloured route
    Routers forward packets, and different packets can take different routes to the same receiver
    • Special devices called routers 路由器 read each packet's header and choose the best route for it.
    • Each packet may take its own path, so packets can travel different ways.
    • Packets may arrive out of order.
    • When the last packet has arrived, the packets are reordered using their packet numbers.
    Explore · ⁨探索⁩

    How data travels in packets · ⁨パケットでのデータ転送方法⁩

    Step through packet switching. Splitting a file into addressed packets is why one lost packet only needs resending, and why many users can share the same line. · ⁨パケットスイッチングのプロセスを確認しましょう。ファイルをアドレス付きのパケットに分割することで、失われたパケットは再送信のみで済み、また複数のユーザーが同一の通信ラインを共有できるようになります。⁩

    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    packet switching/ˈpækɪt ˈswɪtʃɪŋ/ パケット交換
    routers/ˈruːtəz/ ルーター
    2.1

    Methods of data transmission

    English

    Serial and parallel

    Serial 串行 Parallel 并行
    How one bit at a time, down one wire several bits at once, down several wires
    Distance good over long distances good over short distances only
    Cost cheaper (fewer wires) more expensive (more wires)
    Errors bits stay in order bits can arrive at slightly different times over long wires

    Serial sends one bit after another along a single wire. Parallel sends several bits at the same time along several wires, so it is faster over short distances.

    Simplex, half-duplex and full-duplex

    These describe the direction data can travel.

    Method Direction
    simplex 单工 one direction only (e.g. computer → printer)
    half-duplex 半双工 both directions, but only one at a time (e.g. walkie-talkie)
    full-duplex 全双工 both directions at the same time (e.g. phone call)

    Choosing a method

    The choice depends on the distance, the speed needed, the cost, and whether data must travel both ways at once.

    日本語

    Serial and parallel

    Serial 串行 Parallel 并行
    How one bit at a time, down one wire several bits at once, down several wires
    Distance good over long distances good over short distances only
    Cost cheaper (fewer wires) more expensive (more wires)
    Errors bits stay in order bits can arrive at slightly different times over long wires

    Serial sends one bit after another along a single wire. Parallel sends several bits at the same time along several wires, so it is faster over short distances.

    Serial transmission as bits in a line on one wire, and parallel transmission as several bits travelling together on several wires
    Serial sends one bit at a time down one wire; parallel sends several bits at once down several wires

    Simplex, half-duplex and full-duplex

    These describe the direction data can travel.

    Two devices A and B with arrows showing simplex (one way), half-duplex (both ways one at a time) and full-duplex (both ways at once)
    Simplex is one way only; half-duplex is both ways but one at a time; full-duplex is both ways at once
    Method Direction
    simplex 单工 one direction only (e.g. computer → printer)
    half-duplex 半双工 both directions, but only one at a time (e.g. walkie-talkie)
    full-duplex 全双工 both directions at the same time (e.g. phone call)

    Choosing a method

    The choice depends on the distance, the speed needed, the cost, and whether data must travel both ways at once.

    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    serial/ˈsɪərɪəl/ シリアル
    parallel/ˈpærəlel/ 並列に接続される
    simplex/ˈsɪmpleks/ シンプルクス
    half-duplex/hɑːf ˈdjuːpleks/ ハーフデプレス
    full-duplex/fʊl ˈdjuːpleks/ フルデプレス
    2.1

    USB

    English

    The universal serial bus 通用串行总线 (USB) is a common interface 接口 (a connection point) for joining devices to a computer.

    Benefits:

    • the same connector is used by many devices (one standard);
    • the device is detected automatically and the correct driver is loaded;
    • it carries power, so it can charge or run a device;
    • the connector only fits one way, so it is hard to plug in wrongly.

    Drawbacks:

    • the cable can only be a limited length (a few metres);
    • older USB versions are slower than newer ones;
    • transfer speeds can be lower than some other connection types.
    日本語

    The universal serial bus 通用串行总线 (USB) is a common interface 接口 (a connection point) for joining devices to a computer.

    Benefits:

    • the same connector is used by many devices (one standard);
    • the device is detected automatically and the correct driver is loaded;
    • it carries power, so it can charge or run a device;
    • the connector only fits one way, so it is hard to plug in wrongly.

    Drawbacks:

    • the cable can only be a limited length (a few metres);
    • older USB versions are slower than newer ones;
    • transfer speeds can be lower than some other connection types.
    Five different USB plug shapes side by side — micro, mini, type-B, and type-A — with a 5 cm scale bar
    A few of the USB connector shapes. All use the same USB standard, so devices are detected automatically.
    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    universal serial bus/ˌjuːnɪˈvɜːsl ˈsɪərɪəl bʌs/ ユニバーサルシリアルバス
    interface/ˈɪntəfeɪs/ インターフェース
    2.2

    Why we check for errors

    Syllabus · ⁨シラバス⁩
    English
    Candidates should be able to: Notes and guidance
    1 Understand the need to check for errors after data transmission and how these errors can occur • Errors can occur during data transmission due to interference, e.g. data loss, data gain and data change
    2 Describe the processes involved in each of the following error detection methods for detecting errors in data after transmission: parity check (odd and even), checksum and echo check • Including parity byte and parity block check
    3 Describe how a check digit is used to detect errors in data entry and identify examples of when a check digit is used, including international standard book numbers (ISBN) and bar codes
    4 Describe how an automatic repeat query (ARQ) can be used to establish that data is received without error • Including the use of: – positive/negative acknowledgements – timeout
    日本語
    受験者は以下的能力を備えているべきである: メモおよびガイドライン
    1 データ転送後にエラーを検査する必要性と、それらがどのように発生するかを理解する • 干渉によりデータ転送中にエラーが発生する可能性がある。例:データ損失、データ増減、データ変換
    2 以下の各エラー検知方法におけるプロセスを説明する:パリティチェック(奇数・偶数)、チェックサム、エコーチェック • パリティバイトおよびパリティブロックチェックを含む
    3 チェックディジットがデータ入力時のエラー検知にどのように使用されるかを説明し、チェックディジットが使用される例を特定する。国際標準図書番号 (ISBN) およびバーコードを含む
    4 自動再送要求 (ARQ) がデータが誤りなく受信されたことを確認するためにどのように使用されるかを説明する • 以下を使用する場合を含む:– 肯定/否定応答 – タイムアウト

    Source: Cambridge International syllabus · ⁨出典: Cambridge International シラバス⁩

    English

    While data travels, interference 干扰 can change it. Three things can go wrong:

    • data loss — some bits do not arrive;
    • data gain — extra bits are added;
    • data change — some bits are flipped.

    So the receiver checks whether the data arrived correctly.

    日本語

    While data travels, interference 干扰 can change it. Three things can go wrong:

    • data loss — some bits do not arrive;
    • data gain — extra bits are added;
    • data change — some bits are flipped.

    So the receiver checks whether the data arrived correctly.

    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    interference/ˌɪntəˈfɪərəns/ interference
    Watch lesson · ⁨レッスンを視聴⁩
    2.2

    Error detection methods

    English

    Parity check

    A parity check 奇偶校验 adds one extra bit, the parity bit 奇偶校验位, to each byte. There are two types:

    • even parity — the total number of 1s in the byte (including the parity bit) must be even;
    • odd parity — the total number of 1s must be odd.

    Example (even parity): the data 1011001 has four 1s, which is already even, so the parity bit is 0:

    To find an error: the receiver counts the 1s. If even parity was agreed but a byte arrives with an odd number of 1s, an error has happened during transmission.

    A parity check cannot find every error. If two bits flip, the count may still look correct.

    Worked example. A single parity bit tells you that an error happened, but not where. A parity block 奇偶校验块 can find the exact bit. Several bytes are sent together, each with a row parity bit, and one extra parity byte 奇偶校验字节 at the bottom holds a parity bit for each column. Even parity is used below, and one bit was flipped during transmission. Find it.

    Row byte 3 breaks even parity, and column b3 breaks even parity. The flipped bit is where they cross: byte 3, bit b3. Changing it back from 1 to 0 repairs the data. A single parity bit only says an error happened; a parity block says exactly where, so the receiver can even fix it.

    Checksum

    A checksum 校验和 is a value worked out from all the data before sending. The receiver works out the checksum again from the data it received. If the two values do not match, an error has occurred and the data is resent.

    Echo check

    In an echo check 回送校验, the receiver sends the data back to the sender. The sender compares it with the original. If they differ, an error happened. (This needs the data to be sent twice, so it is slow.)

    Automatic Repeat reQuest (ARQ)

    Automatic Repeat reQuest 自动重传请求 (ARQ) uses messages called acknowledgements 确认.

    • The receiver sends a positive acknowledgement if a packet arrived correctly, or a negative acknowledgement if it did not.
    • The sender starts a timeout 超时 timer. If no positive acknowledgement comes back in time, the sender sends the packet again.

    Check digit

    A check digit 校验码 is an extra digit placed at the end of a number, worked out from the other digits. It is used to find mistakes when a number is typed in.

    When the number is entered, the check digit is calculated again and compared. It can catch:

    • an incorrect digit entered,
    • a transposition error 换位错误 (two digits swapped, e.g. 21 typed as 12),
    • a digit left out or an extra digit added,
    • a phonetic error (a digit that sounds similar, e.g. 13 and 30).

    Check digits are used in barcodes 条形码 and ISBNs (book numbers).

    日本語

    Parity check

    A parity check 奇偶校验 adds one extra bit, the parity bit 奇偶校验位, to each byte. There are two types:

    Data with four 1s (even); a parity bit of 0 keeps it even
    A parity bit is added to make the number of 1s even (or odd)
    • even parity — the total number of 1s in the byte (including the parity bit) must be even;
    • odd parity — the total number of 1s must be odd.

    Example (even parity): the data 1011001 has four 1s, which is already even, so the parity bit is 0:

    parity bit + data
        0        1011001
    

    To find an error: the receiver counts the 1s. If even parity was agreed but a byte arrives with an odd number of 1s, an error has happened during transmission.

    A parity check cannot find every error. If two bits flip, the count may still look correct.

    Worked example. A single parity bit tells you that an error happened, but not where. A parity block 奇偶校验块 can find the exact bit. Several bytes are sent together, each with a row parity bit, and one extra parity byte 奇偶校验字节 at the bottom holds a parity bit for each column. Even parity is used below, and one bit was flipped during transmission. Find it.

              b1 b2 b3 b4 b5 | parity
     byte 1    1  0  1  1  0 |   1
     byte 2    0  1  1  0  1 |   1
     byte 3    1  1  1  1  0 |   1    <- row: odd number of 1s
     byte 4    0  0  1  1  0 |   0
     ------------------------------
     parity    0  0  1  1  1 |   1
                     ^ column b3: odd number of 1s
    

    Row byte 3 breaks even parity, and column b3 breaks even parity. The flipped bit is where they cross: byte 3, bit b3. Changing it back from 1 to 0 repairs the data. A single parity bit only says an error happened; a parity block says exactly where, so the receiver can even fix it.

    Checksum

    A checksum 校验和 is a value worked out from all the data before sending. The receiver works out the checksum again from the data it received. If the two values do not match, an error has occurred and the data is resent.

    Echo check

    In an echo check 回送校验, the receiver sends the data back to the sender. The sender compares it with the original. If they differ, an error happened. (This needs the data to be sent twice, so it is slow.)

    Automatic Repeat reQuest (ARQ)

    Automatic Repeat reQuest 自动重传请求 (ARQ) uses messages called acknowledgements 确认.

    • The receiver sends a positive acknowledgement if a packet arrived correctly, or a negative acknowledgement if it did not.
    • The sender starts a timeout 超时 timer. If no positive acknowledgement comes back in time, the sender sends the packet again.

    Check digit

    A check digit 校验码 is an extra digit placed at the end of a number, worked out from the other digits. It is used to find mistakes when a number is typed in.

    When the number is entered, the check digit is calculated again and compared. It can catch:

    • an incorrect digit entered,
    • a transposition error 换位错误 (two digits swapped, e.g. 21 typed as 12),
    • a digit left out or an extra digit added,
    • a phonetic error (a digit that sounds similar, e.g. 13 and 30).

    Check digits are used in barcodes 条形码 and ISBNs (book numbers).

    Explore · ⁨探索⁩

    Computing concept lab · ⁨コンピューティング概念ラボ⁩

    Classify concrete examples by the computing idea they demonstrate. · ⁨具体的な例を、それが示すコンピューティングのアイデアに基づいて分類せよ。⁩

    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    parity check/ˈpærɪti tʃek/ パリティチェック
    parity bit/ˈpærɪti bɪt/ パリティビット
    parity block/ˈpærɪti blɒk/ パリティブロック
    parity byte/ˈpærɪti baɪt/ パリティバイト
    checksum/ˈtʃeksəm/ チェックサム
    echo check/ˈekəʊ tʃek/ エコーチェック
    automatic repeat request/ˌɔːtəˈmætɪk rɪˈpiːt rɪˈkwest/ 自動再送要求
    acknowledgements/əkˈnɒlɪdʒmənts/ 確認応答
    timeout/ˈtaɪmaʊt/ タイムアウト
    check digit/tʃek ˈdɪdʒɪt/ チェック桁
    transposition error/trænspəˈzɪʃn ˈerə/ 転送エラー
    barcodes/ˈbɑːkəʊdz/ バーコード
    2.3

    Encryption

    Syllabus · ⁨シラバス⁩
    English
    Candidates should be able to: Notes and guidance
    1 Understand the need for and purpose of encryption when transmitting data
    2 Understand how data is encrypted using symmetric and asymmetric encryption • Asymmetric encryption includes the use of public and private keys
    日本語
    受験者は以下的能力を備えているべきである: メモおよびガイドライン
    1 データを転送する際の暗号化の必要性と目的を理解する
    2 対称暗号化および非対称暗号化を用いてデータがどのように暗号化されるかを理解する • 非対称暗号化には公開鍵と秘密鍵の使用を含む

    Source: Cambridge International syllabus · ⁨出典: Cambridge International シラバス⁩

    English

    Why we need encryption

    Encryption 加密 scrambles data so that it cannot be understood if it is intercepted 拦截 (caught) by the wrong person. The readable data is called plaintext 明文; after encryption it becomes ciphertext 密文.

    Encryption does not stop data from being intercepted. It only stops the data from being understood.

    Symmetric encryption

    Symmetric encryption 对称加密 uses a single key 密钥 to both encrypt and decrypt the data. The sender and receiver must share this same secret key. The risk is that the key itself could be stolen while being shared.

    Asymmetric encryption

    Asymmetric encryption 非对称加密 uses two different keys:

    • a public key 公钥 that anyone can have, used to encrypt;
    • a private key 私钥 that is kept secret, used to decrypt.

    Data encrypted with the public key can only be decrypted with the matching private key, so the key never has to be shared. This is safer than sharing one secret key.

    日本語

    Why we need encryption

    Encryption 加密 scrambles data so that it cannot be understood if it is intercepted 拦截 (caught) by the wrong person. The readable data is called plaintext 明文; after encryption it becomes ciphertext 密文.

    Encryption does not stop data from being intercepted. It only stops the data from being understood.

    Symmetric encryption

    Symmetric encryption 对称加密 uses a single key 密钥 to both encrypt and decrypt the data. The sender and receiver must share this same secret key. The risk is that the key itself could be stolen while being shared.

    Asymmetric encryption

    Asymmetric encryption 非对称加密 uses two different keys:

    • a public key 公钥 that anyone can have, used to encrypt;
    • a private key 私钥 that is kept secret, used to decrypt.

    Data encrypted with the public key can only be decrypted with the matching private key, so the key never has to be shared. This is safer than sharing one secret key.

    Symmetric encryption using one shared key for both steps, and asymmetric encryption using a public key to encrypt and a private key to decrypt
    Symmetric uses one shared key; asymmetric uses a public key to encrypt and a private key to decrypt
    Explore · ⁨探索⁩

    The Caesar cipher · ⁨凯撒暗号(Caesar cipher)⁩

    Shift each letter to encrypt a message — the simplest idea of a cipher and its key. · ⁨各文字をシフトしてメッセージを暗号化します——最も単純な暗号方式とその**鍵(キー)**の概念です。⁩

    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    encryption/enˈkrɪpʃn/ 暗号化
    intercepted/ˌɪntəˈseptɪd/ 傍受された
    plaintext/ˈpleɪntekst/ 平明文
    ciphertext/ˈsaɪfətekst/ 暗号文
    symmetric encryption/sɪˈmetrɪk enˈkrɪpʃn/ 対称暗号化
    key/kiː/ キー
    asymmetric encryption/ˌeɪsɪˈmetrɪk enˈkrɪpʃn/ 非対称暗号化
    public key/ˈpʌblɪk kiː/ 公開鍵
    private key/ˈpraɪvət kiː/ 秘密鍵
    2.3

    Exam tips

    • Data is sent in packets (a header with the addresses and packet number, a payload, and a trailer). Packets can take different routes and arrive out of order, then are reordered by their packet numbers.
    • Match the transmission types: serial (one bit at a time, good over long distances) vs parallel (several bits at once, short distances); simplex / half-duplex / full-duplex describe the direction.
    • A single parity bit only shows that an error happened; a parity block locates the exact wrong bit — the row and the column that both fail.
    • Learn the error-detection methods and what each does: parity check, checksum, echo check, ARQ, and the check digit (for typed-in numbers).
    • Symmetric encryption uses one shared key; asymmetric uses a public key to encrypt and a private key to decrypt, so no secret key is ever shared.
  • 3

    Hardware · ⁨ハードウェア⁩

    Watch lesson · ⁨レッスンを視聴⁩
    3.1

    The central processing unit (CPU)

    Syllabus · ⁨シラバス⁩
    English
    Candidates should be able to: Notes and guidance
    1 (a) Understand the role of the central processing unit (CPU) in a computer • The CPU processes instructions and data that are input into the computer so that the result can be output
    (b) Understand what is meant by a microprocessor • A microprocessor is a type of integrated circuit on a single chip
    2 (a) Understand the purpose of the components in a CPU, in a computer that has a Von Neumann architecture • Including: – units: arithmetic logic unit (ALU) and control unit (CU) – registers: program counter (PC), memory address register (MAR), memory data register (MDR), current instruction register (CIR) and accumulator (ACC) – buses: address bus, data bus and control bus
    (b) Describe the process of the fetch–decode–execute (FDE) cycle, including the role of each component in the process • How instructions and data are fetched from random access memory (RAM) into the CPU, how they are processed using each component and how they are then executed • Storing data and addresses into specific registers • Using buses to transmit data, addresses and signals • Using units to fetch, decode and execute data and instructions
    3 Understand what is meant by a core, cache and clock in a CPU and explain how they can affect the performance of a CPU • The number of cores, size of the cache and speed of the clock can affect the performance of a CPU
    4 Understand the purpose and use of an instruction set for a CPU • An instruction set is a list of all the commands that can be processed by a CPU, and the commands are machine code
    5 Describe the purpose and characteristics of an embedded system and identify devices in which they are commonly used • An embedded system is used to perform a dedicated functions. For example in, domestic appliances, cars, security systems, lighting systems or vending machines. This is different to a general purpose computer that is used to perform many different functions. For example in, a personal computer (PC) or a laptop
    日本語
    受験者は以下的能力を備えているべきである: メモおよびガイドライン
    1 (a) コンピュータにおける中央処理ユニット (CPU) の役割を理解する • CPUはコンピュータに入力される命令とデータを処理し、結果を出力できるようにする
    (b) マイクロプロセッサが何を意味するのかを理解する • マイクロプロセッサは単一のチップ上の集積回路の一種である
    2 (a) ヴォン・ネーマン構造を持つコンピュータにおけるCPUの各コンポーネントの目的を理解する • 以下を含む: – ユニット:演算論理装置(ALU)と制御装置(CU) – レジスタ:プログラムカウンタ(PC)、メモリアドレスレジスタ(MAR)、メモリデータレジスタ(MDR)、現在命令レジスタ(CIR)、アキュムレータ(ACC) – バス:アドレスバス、データバス、コントロールバス
    (b) フェッチ–デコード–エグゼキューション(FDE)サイクルのプロセスを説明し、各コンポーネントがそのプロセスで果たす役割を含める • 命令やデータをランダムアクセスメモリ(RAM)からCPUへフェッチする方法、各コンポーネントを用いて処理される様子、そして実行される流れ • 特定のレジスタへのデータの格納とアドレスの格納 • データ、アドレス、信号の伝送にバスを使用すること • データと命令のフェッチ、デコード、エグゼキューションにユニットを使用すること
    3 CPUにおけるコア、キャッシュ、クロックの意味を理解し、これらがCPUのパフォーマンスに与える影響を説明する • コア数、キャッシュ容量、クロック速度はCPUのパフォーマンスに影響を与える
    4 CPUの命令セットの目的と使用法を理解する • 命令セットとは、CPUが処理できるすべてのコマンドのリストであり、これらのコマンドは機械語である
    5 埋め込みシステムの目的と特徴を説明し、これらが一般的に使用されている機器を特定する • 埋め込みシステムは専任の機能を行うために使用される。例えば、家庭用家電製品、自動車、セキュリティシステム、照明システム、自動販売機など。これは多くの異なる機能を行うための汎用コンピュータ(例:パーソナルコンピュータ(PC)やノートパソコン)とは異なる

    Source: Cambridge International syllabus · ⁨出典: Cambridge International シラバス⁩

    English
    The fetch-decode-execute cycle

    The central processing unit 中央处理器 (CPU) is the part of the computer that processes data and carries out instructions 指令. It runs programs by repeating a cycle, millions of times each second.

    Parts of the CPU

    Part What it does
    arithmetic logic unit 算术逻辑单元 (ALU) does calculations (add, subtract) and logical operations (compare)
    control unit 控制单元 (CU) sends control signals to manage all the parts and tell them what to do
    registers 寄存器 very small, very fast stores that hold one piece of data at a time

    The parts are joined by buses 总线 — sets of wires that carry information:

    • the address bus 地址总线 carries memory addresses (one direction);
    • the data bus 数据总线 carries data and instructions (both directions);
    • the control bus 控制总线 carries control signals.

    Special registers

    These registers are used during the fetch–execute cycle.

    Register Purpose
    program counter 程序计数器 (PC) holds the address of the next instruction
    memory address register 内存地址寄存器 (MAR) holds the address to read from or write to
    memory data register 内存数据寄存器 (MDR) holds the data or instruction just fetched
    current instruction register 当前指令寄存器 (CIR) holds the instruction now being carried out
    accumulator 累加器 (ACC) holds the result of the ALU's calculations

    The fetch–execute cycle

    The fetch–execute cycle 取指执行周期 has three stages, repeated again and again:

    1. Fetch — the instruction is copied from memory 内存 into the CPU (using the PC, MAR and MDR). The PC then increases by 1.
    2. Decode — the control unit works out what the instruction means.
    3. Execute — the instruction is carried out (the ALU may do a calculation, with the result going to the accumulator).

    Cache memory

    Cache 高速缓存 is a small amount of very fast memory inside or close to the CPU. It stores data and instructions that the CPU uses often. The CPU can read from cache much faster than from main memory, so the computer runs faster.

    What affects CPU performance

    Feature Effect
    number of cores 核心 each core can run instructions on its own, so more cores can do more work at the same time
    cache size a larger cache holds more data ready for the CPU, so it waits less
    clock speed 时钟速度 the number of cycles per second; a higher clock speed runs more instructions per second

    Worked example. Two computers are identical except that A has a 3.0 GHz single-core CPU with 2 MB of cache, and B has a 2.4 GHz quad-core CPU with 8 MB of cache. Which is better for video editing, and why? Video editing splits into many tasks that can run at the same time, so B's four cores can process several streams in parallel while A can only work on one at a time. B's larger cache also keeps more frequently used data close to the CPU, so it has to fetch from RAM less often. B is the better choice, even though A has the higher clock speed. Never answer on clock speed alone: weigh cores, cache and clock speed together, and tie each one to the job being done.

    Embedded systems

    An embedded system 嵌入式系统 is a small computer built inside a larger device to do one fixed job. It is dedicated to that task, is usually small and low-cost, and has no general operating system. Examples: a washing machine, a microwave, a set-top box.

    日本語
    The fetch-decode-execute cycle

    The central processing unit 中央处理器 (CPU) is the part of the computer that processes data and carries out instructions 指令. It runs programs by repeating a cycle, millions of times each second.

    A square computer chip with a shiny metal top and the model name printed on it
    A central processing unit (CPU): the chip that processes data and runs the instructions

    Parts of the CPU

    Part What it does
    arithmetic logic unit 算术逻辑单元 (ALU) does calculations (add, subtract) and logical operations (compare)
    control unit 控制单元 (CU) sends control signals to manage all the parts and tell them what to do
    registers 寄存器 very small, very fast stores that hold one piece of data at a time

    The parts are joined by buses 总线 — sets of wires that carry information:

    • the address bus 地址总线 carries memory addresses (one direction);
    • the data bus 数据总线 carries data and instructions (both directions);
    • the control bus 控制总线 carries control signals.
    Block diagram of a CPU containing the control unit, ALU and registers, joined to main memory by the address, data and control buses
    The CPU holds the control unit, the ALU and the registers; three buses link it to main memory

    Special registers

    These registers are used during the fetch–execute cycle.

    Register Purpose
    program counter 程序计数器 (PC) holds the address of the next instruction
    memory address register 内存地址寄存器 (MAR) holds the address to read from or write to
    memory data register 内存数据寄存器 (MDR) holds the data or instruction just fetched
    current instruction register 当前指令寄存器 (CIR) holds the instruction now being carried out
    accumulator 累加器 (ACC) holds the result of the ALU's calculations

    The fetch–execute cycle

    The fetch–execute cycle 取指执行周期 has three stages, repeated again and again:

    1. Fetch — the instruction is copied from memory 内存 into the CPU (using the PC, MAR and MDR). The PC then increases by 1.
    2. Decode — the control unit works out what the instruction means.
    3. Execute — the instruction is carried out (the ALU may do a calculation, with the result going to the accumulator).
    The fetch-decode-execute cycle drawn as three boxes connected in a loop
    The processor repeats three stages: fetch the instruction, decode it, then execute it

    Cache memory

    Cache 高速缓存 is a small amount of very fast memory inside or close to the CPU. It stores data and instructions that the CPU uses often. The CPU can read from cache much faster than from main memory, so the computer runs faster.

    What affects CPU performance

    Feature Effect
    number of cores 核心 each core can run instructions on its own, so more cores can do more work at the same time
    cache size a larger cache holds more data ready for the CPU, so it waits less
    clock speed 时钟速度 the number of cycles per second; a higher clock speed runs more instructions per second

    Worked example. Two computers are identical except that A has a 3.0 GHz single-core CPU with 2 MB of cache, and B has a 2.4 GHz quad-core CPU with 8 MB of cache. Which is better for video editing, and why? Video editing splits into many tasks that can run at the same time, so B's four cores can process several streams in parallel while A can only work on one at a time. B's larger cache also keeps more frequently used data close to the CPU, so it has to fetch from RAM less often. B is the better choice, even though A has the higher clock speed. Never answer on clock speed alone: weigh cores, cache and clock speed together, and tie each one to the job being done.

    Embedded systems

    An embedded system 嵌入式系统 is a small computer built inside a larger device to do one fixed job. It is dedicated to that task, is usually small and low-cost, and has no general operating system. Examples: a washing machine, a microwave, a set-top box.

    A green circuit board densely packed with chips, memory and connectors, taken from inside a satnav
    The mainboard from inside a satnav: an embedded system is a small dedicated computer like this, built into a device to do one fixed job
    Explore · ⁨探索⁩

    The fetch-execute cycle · ⁨フェチ・エグゼキューションサイクル⁩

    Tap round the loop the CPU repeats billions of times a second — fetch the instruction, decode what it means, execute it, then do it all again. · ⁨CPUが秒間数十億回繰り返すループを追え——命令を取得し、その意味をデコードし、実行し、すべてを再び行う。⁩

    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    central processing unit/ˈsentrəl ˈprəʊsesɪŋ ˈjuːnɪt/ 中央処理装置(CPU)
    instructions/ɪnˈstrʌkʃnz/ 命令
    arithmetic logic unit/əˈrɪθmətɪk ˈlɒdʒɪk ˈjuːnɪt/ 演算論理装置(ALU)
    control unit/kənˈtrəʊl ˈjuːnɪt/ 制御ユニット
    registers/ˈredʒɪstəz/ レジスタ
    buses/ˈbʌsɪz/ バス
    address bus/əˈdres bʌs/ アドレスバス
    data bus/ˈdeɪtə bʌs/ データバス
    control bus/kənˈtrəʊl bʌs/ コントロールバス
    program counter/ˈprəʊɡræm ˈkaʊntə/ プログラムカウンタ
    memory address register/ˈmeməri əˈdres ˈredʒɪstə/ メモリアドレスレジスタ
    memory data register/ˈmeməri ˈdeɪtə ˈredʒɪstə/ メモリデータレジスタ
    current instruction register/ˈkʌrənt ɪnˈstrʌkʃn ˈredʒɪstə/ 現在命令レジスタ
    accumulator/əˈkjuːmjʊleɪtə/ アキュムレーター
    fetch–execute cycle/fetʃ ˈeksɪkjuːt ˈsaɪkl/ フェッチ=エグゼキューターサイクル
    Cache/kæʃ/ キャッシュ
    cores/kɔːz/ コア
    clock speed/klɒk spiːd/ クロック速度
    embedded system/emˈbedɪd ˈsɪstəm/ 組み込みシステム
    memory/ˈmeməri/ 記憶
    Watch lesson · ⁨レッスンを視聴⁩
    3.2

    Input devices

    Syllabus · ⁨シラバス⁩
    English
    Candidates should be able to: Notes and guidance
    1 Understand what is meant by an input device and why it is required • Including: – barcode scanner – digital camera – keyboard – microphone – optical mouse – QR code scanner – touch screen (resistive, capacitive and infra-red) – two-dimensional (2D) and three-dimensional (3D) scanners
    2 Understand what is meant by an output device and why it is required • Including: – actuator – digital light processing (DLP) projector – inkjet printer – laser printer – light emitting diode (LED) screen – liquid crystal display (LCD) projector – liquid crystal display (LCD) screen – speaker – 3D printer
    3 (a) Understand what is meant by a sensor and the purposes of sensors • Limited to: – acoustic – accelerometer – flow – gas – humidity – infra-red – level – light – magnetic field – moisture – pH – pressure – proximity – temperature
    (b) Identify the type of data captured by each sensor and understand when each sensor would be used, including selecting the most suitable sensor for a given context
    日本語
    受験者は以下的能力を備えているべきである: メモおよびガイドライン
    1 入力デバイスの意味を理解し、なぜ必要とされるかを説明する • 以下を含む: – バーコードスキャナー – デジタルカメラ – キーボード – マイク – オプティカルマウス – QRコードスキャナー – タッチスクリーン(抵抗式、静電容量式、赤外線式) – 2次元(2D)および3次元(3D)スキャナー
    2 出力デバイスの意味を理解し、なぜ必要とされるかを説明する • 以下を含む: – アクチュエーター – デジタルライトプロセッシング(DLP)プロジェクター – インクジェットプリンター – レーザープリンター – 発光ダイオード(LED)ディスプレイ – リキッドクリスタルディスプレイ(LCD)プロジェクター – リキッドクリスタルディスプレイ(LCD)ディスプレイ – スピーカー – 3Dプリンター
    3 (a) センサーの意味とセンサーの目的を理解する • 以下の範囲に限定: – 音響 – アクセラロメーター – フロー – ガス – 湿度 – 赤外線 – レベル – 光 – 磁場 – 水分 – pH – 圧力 – 近接 – 温度
    (b) 各センサーによって取得されるデータの種類を特定し、どのセンサーがどのような状況で使用されるか、さらに特定の文脈において最も適切なセンサーを選択することを理解する

    Source: Cambridge International syllabus · ⁨出典: Cambridge International シラバス⁩

    English

    An input device sends data into the computer.

    Device How it works
    barcode scanner 条形码扫描器 shines light at the bars and reads the pattern reflected back
    QR code scanner 二维码扫描器 a camera reads a square pattern of black-and-white blocks
    keyboard pressing a key sends a code for that character
    optical mouse 光电鼠标 a light and a sensor track movement across a surface
    microphone turns sound waves into an electrical signal
    digital camera a lens focuses light onto a sensor that records pixels
    sensors 传感器 measure a physical quantity (such as temperature or light) and send it as data
    touch screen 触摸屏 detects where your finger touches the screen

    A touch screen can work in three ways:

    • resistive 电阻式 — two layers are pressed together where you touch;
    • capacitive 电容式 — it senses the tiny electric charge of your finger;
    • infrared 红外线 — your finger breaks a grid of light beams.
    日本語

    An input device sends data into the computer.

    Device How it works
    barcode scanner 条形码扫描器 shines light at the bars and reads the pattern reflected back
    QR code scanner 二维码扫描器 a camera reads a square pattern of black-and-white blocks
    keyboard pressing a key sends a code for that character
    optical mouse 光电鼠标 a light and a sensor track movement across a surface
    microphone turns sound waves into an electrical signal
    digital camera a lens focuses light onto a sensor that records pixels
    sensors 传感器 measure a physical quantity (such as temperature or light) and send it as data
    touch screen 触摸屏 detects where your finger touches the screen
    A close-up of a black computer keyboard with the QWERTY letter keys
    A keyboard: each key press sends a code for that character
    A white optical mouse on a desk, with the optical light glowing underneath
    An optical mouse: a light and a sensor track its movement on the desk
    A flat white box-shaped scanner with a closed lid that lifts up to scan a page
    A flatbed scanner: it shines light across a page to copy it into the computer
    A handheld scanner in a stand, joined to a computer by a USB cable
    A barcode scanner reads the pattern of bars and sends it to the computer
    The front of a small red digital camera, showing its lens and flash
    A digital camera: a lens focuses light onto a sensor that records the pixels
    A handheld microphone with a rounded metal mesh head
    A microphone turns sound waves into an electrical signal
    A small blue-and-black temperature sensor on a tiny circuit board with three pins
    A sensor measures a physical quantity (here, temperature) and sends it as data

    A touch screen can work in three ways:

    • resistive 电阻式 — two layers are pressed together where you touch;
    • capacitive 电容式 — it senses the tiny electric charge of your finger;
    • infrared 红外线 — your finger breaks a grid of light beams.
    A finger touching the screen of a smartphone to scroll a page
    A touch screen senses where your finger touches it
    Explore · ⁨探索⁩

    Device and storage lab · ⁨デバイスおよびストレージ実験室⁩

    Classify computing examples by what job they do in a system. · ⁨システム内で何の役割を果たすかによってコンピューティングの例を分類してください。⁩

    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    barcode scanner/ˈbɑːkəʊd ˈskænə/ バーコードスキャナ
    QR code scanner/ˌkjuː ˈɑː kəʊd ˈskænə/ QRコードリーダー
    sensors/ˈsensəz/ センサー
    touch screen/tʌtʃ skriːn/ タッチスクリーン
    resistive/rɪˈzɪstɪv/ 抵抗式
    capacitive/kəˈpæsɪtɪv/ 静電容量式
    infrared/ˌɪnfrəˈred/ 赤外線
    optical mouse/ˈɒptɪkl maʊs/ 光学マウス
    3.2

    Output devices

    English

    An output device sends data out of the computer to the user.

    Device How it works
    actuator 执行器 turns an electrical signal into movement (e.g. a motor or valve)
    LCD/LED screen shows images using a grid of tiny coloured dots
    projector 投影仪 shines an enlarged image onto a wall or screen
    inkjet printer 喷墨打印机 sprays tiny drops of ink onto paper
    laser printer 激光打印机 uses a laser and powder (toner) fixed onto paper by heat
    3D printer builds a solid object layer by layer
    speaker 扬声器 turns an electrical signal into sound
    日本語

    An output device sends data out of the computer to the user.

    Device How it works
    actuator 执行器 turns an electrical signal into movement (e.g. a motor or valve)
    LCD/LED screen shows images using a grid of tiny coloured dots
    projector 投影仪 shines an enlarged image onto a wall or screen
    inkjet printer 喷墨打印机 sprays tiny drops of ink onto paper
    laser printer 激光打印机 uses a laser and powder (toner) fixed onto paper by heat
    3D printer builds a solid object layer by layer
    speaker 扬声器 turns an electrical signal into sound
    A desktop inkjet printer with the paper tray open at the top
    An inkjet printer sprays tiny drops of ink onto the paper
    A white-and-grey desktop laser printer with its paper trays folded out
    A laser printer uses a laser and powder (toner) fixed onto paper by heat
    A 3D printer: a black metal frame holding a flat print bed and a moving print head
    A 3D printer builds a solid object layer by layer
    A wide flat-screen computer monitor on a round stand
    An LCD/LED monitor shows images using a grid of tiny coloured dots
    A pair of small black computer speakers on a desk
    A speaker turns an electrical signal into sound
    A pair of blue over-ear headphones
    Headphones turn an electrical signal into sound for one listener
    Several electric motors of different sizes next to a 9-volt battery for scale
    An actuator such as a motor turns an electrical signal into movement
    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    actuator/ˈæktʃuːeɪtə/ アクチュエータ
    projector/prəˈdʒektə/ プロジェクター
    inkjet printer/ɪŋkˈdʒet ˈprɪntə/ インクジェットプリンタ
    laser printer/ˈleɪzə ˈprɪntə/ レーザープリンター
    speaker/ˈspiːkə/ スピーカー
    3.3

    Primary storage: RAM and ROM

    Syllabus · ⁨シラバス⁩
    English
    Candidates should be able to: Notes and guidance
    1 Understand what is meant by primary storage • Primary storage is directly accessed by the CPU • Including the role of: – random access memory (RAM) – read only memory (ROM) • Including why a computer needs both RAM and ROM, and the difference between them
    2 Understand what is meant by secondary storage • Secondary storage is not directly accessed by the CPU and is necessary for more permanent storage of data
    3 Describe the operation of magnetic, optical and solid-state (flash memory) storage and give examples of each • Magnetic storage uses platters which are divided into tracks and sectors. Data is read and written using electromagnets. Including hard disk drive (HDD) • Optical storage uses lasers to create and read pits and lands. Including: CD, DVD and Blu-ray • Solid-state (flash memory) uses NAND or NOR technology. Transistors are used as control gates and floating gates. Including: solid-state drive (SSD), SD card and USB drive
    4 Describe what is meant by virtual memory, how it is created and used and why it is necessary • Pages of data are transferred between RAM and virtual memory when needed
    5 Understand what is meant by cloud storage • Cloud storage can be accessed remotely in comparison to storing data locally
    6 Explain the advantages and disadvantages of storing data on the cloud in comparison to storing it locally • Physical servers and storage are needed to store data in cloud storage
    日本語
    受験者は以下的能力を備えているべきである: メモおよびガイドライン
    1 プライマリストレージの意味を理解する • プライマリストレージはCPUによって直接アクセスされる • 以下の役割を含む: – ランダムアクセスメモリ(RAM) – リードオンリーメモリ(ROM) • コンピュータがRAMとROMの両方が必要とする理由、およびそれらの違いを含む
    2 セカンドリストレージの意味を理解する • セカンドリストレージはCPUによって直接アクセスされず、データのより永続的な保存に不可欠である
    3 磁気、光、**固体状(フラッシュメモリ)**ストレージの動作を説明し、それぞれの例を挙げる • 磁気ストレージはプラッターを使用し、トラックとセクターに分割されている。データは電磁石を用いて読み書きされる。ハードディスクドライブ(HDD)を含む • 光ストレージはレーザーを使用してピットとランドを作成して読み取る。CD、DVD、Blu-rayを含む • 固体状(フラッシュメモリ)ストレージはNANDまたはNOR技術を使用する。トランジスタが制御ゲートおよびフローティングゲートとして使用される。ソリッドステートドライブ(SSD)、SDカード、USBメモリを含む
    4 仮想メモリの意味、その作成方法と使用方法、そしてなぜ必要とされるかを説明する • 必要な時にデータページがRAMと仮想メモリの間で転送される
    5 クラウドストレージの意味を理解する • クラウドストレージは、データをローカルに保存する場合と比較して、遠隔地からアクセス可能である
    6 クラウドストレージにデータを保存することと、ローカルに保存することの比較における利点と欠点を説明する • クラウドストレージにデータを保存するには、物理サーバーおよびストレージが必要である

    Source: Cambridge International syllabus · ⁨出典: Cambridge International シラバス⁩

    English

    Primary storage 主存储器 is memory the CPU can use directly. There are two kinds.

    RAM ROM
    Full name random access memory 随机存取存储器 read only memory 只读存储器
    Read/write read and write read only
    Keeps data without power? no — it is volatile 易失性 yes — it is non-volatile 非易失性
    Holds programs and data in use now start-up instructions (how to boot the computer)

    Both are needed: ROM tells the computer how to start, then RAM holds the programs you run.

    日本語

    Primary storage 主存储器 is memory the CPU can use directly. There are two kinds.

    RAM: volatile, can change, holds running programs. ROM: non-volatile, cannot change, holds the startup instructions
    RAM is volatile and holds running programs; ROM is non-volatile and read-only
    RAM ROM
    Full name random access memory 随机存取存储器 read only memory 只读存储器
    Read/write read and write read only
    Keeps data without power? no — it is volatile 易失性 yes — it is non-volatile 非易失性
    Holds programs and data in use now start-up instructions (how to boot the computer)

    Both are needed: ROM tells the computer how to start, then RAM holds the programs you run.

    A long thin green circuit board carrying rows of small black memory chips and a gold edge connector
    A stick of RAM (random access memory): it holds the programs and data in use now
    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    Primary storage/ˈpraɪməri ˈstɔːrɪdʒ/ 主存储
    random access memory/ˈrændəm ˈækses ˈmeməri/ ランダムアクセスメモリ(RAM)
    read only memory/riːd ˈəʊnli ˈmeməri/ 読み出し専用メモリ(ROM)
    volatile/ˈvɒlətaɪl/ 揮発性
    non-volatile/nɒn ˈvɒlətaɪl/ 非揮発性
    3.3

    Secondary storage

    English

    Secondary storage 辅助存储器 keeps data permanently, even when the power is off. It is non-volatile and is used for long-term storage. There are three types.

    Type How it stores data Examples
    magnetic storage 磁存储 data is stored as magnetised spots on spinning disks hard disk drive (HDD), magnetic tape
    optical storage 光存储 data is stored as marks read by a laser CD, DVD, Blu-ray
    solid state storage 固态存储 data is stored in flash memory 闪存, with no moving parts SSD, USB flash drive, memory card
    日本語

    Secondary storage 辅助存储器 keeps data permanently, even when the power is off. It is non-volatile and is used for long-term storage. There are three types.

    Type How it stores data Examples
    magnetic storage 磁存储 data is stored as magnetised spots on spinning disks hard disk drive (HDD), magnetic tape
    optical storage 光存储 data is stored as marks read by a laser CD, DVD, Blu-ray
    solid state storage 固态存储 data is stored in flash memory 闪存, with no moving parts SSD, USB flash drive, memory card
    Inside an opened hard disk drive, showing the round silver disk (platter) and the read/write arm resting on it
    Inside a hard disk drive (HDD): the shiny disk spins and the arm reads the magnetised data
    Four square magnetic-tape cartridges, each holding a reel of thin magnetic tape
    Magnetic tape stores data on a long magnetic strip; it is cheap for large backups
    A shiny round disc reflecting rainbow colours from its data surface
    An optical disc such as a CD or DVD: a laser reads the marks on its shiny surface
    A 2.5 inch Samsung solid state drive, a flat grey metal box with no visible moving parts
    A solid state drive (SSD) stores data in flash memory chips and has no moving parts
    A small white USB stick with a red cap loop, labelled 32 GB
    A USB flash drive stores data in flash memory and has no moving parts
    A pyramid with registers at the top, then cache, then RAM, then secondary storage at the base, with a faster-smaller to slower-larger arrow
    Storage forms a hierarchy: registers and cache are fastest but smallest; secondary storage is slowest but largest
    Explore · ⁨探索⁩

    Device and storage lab · ⁨デバイスおよびストレージ実験室⁩

    Classify computing examples by what job they do in a system. · ⁨システム内で何の役割を果たすかによってコンピューティングの例を分類してください。⁩

    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    Secondary storage/ˈsekəndəri ˈstɔːrɪdʒ/ 補助記憶
    magnetic storage/mæɡˈnetɪk ˈstɔːrɪdʒ/ 磁気ストレージ
    optical storage/ˈɒptɪkl ˈstɔːrɪdʒ/ 光学ストレージ
    solid state storage/ˈsɒlɪd steɪt ˈstɔːrɪdʒ/ ソリッドステートストレージ
    flash memory/flæʃ ˈmeməri/ フラッシュメモリ
    3.3

    Virtual memory

    English

    When the RAM becomes full, the computer can use part of the secondary storage as extra, pretend RAM. This is called virtual memory 虚拟内存.

    Data that is not needed right now is moved out of RAM onto the disk, which frees space in RAM for other programs. This lets you run more programs than the RAM alone could hold. It is slower, because secondary storage is much slower than RAM.

    日本語

    When the RAM becomes full, the computer can use part of the secondary storage as extra, pretend RAM. This is called virtual memory 虚拟内存.

    Data that is not needed right now is moved out of RAM onto the disk, which frees space in RAM for other programs. This lets you run more programs than the RAM alone could hold. It is slower, because secondary storage is much slower than RAM.

    RAM holding two active programs and a freed slot, with an arrow moving an unused program out to the disk
    When RAM is full, data not in use is moved to the disk to free RAM — slower, but it lets more programs run
    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    virtual memory/ˈvɜːtʃuːəl ˈmeməri/ 仮想メモリ
    3.3

    Cloud storage

    Syllabus · ⁨シラバス⁩
    English
    Candidates should be able to: Notes and guidance
    1 Understand what is meant by primary storage • Primary storage is directly accessed by the CPU • Including the role of: – random access memory (RAM) – read only memory (ROM) • Including why a computer needs both RAM and ROM, and the difference between them
    2 Understand what is meant by secondary storage • Secondary storage is not directly accessed by the CPU and is necessary for more permanent storage of data
    3 Describe the operation of magnetic, optical and solid-state (flash memory) storage and give examples of each • Magnetic storage uses platters which are divided into tracks and sectors. Data is read and written using electromagnets. Including hard disk drive (HDD) • Optical storage uses lasers to create and read pits and lands. Including: CD, DVD and Blu-ray • Solid-state (flash memory) uses NAND or NOR technology. Transistors are used as control gates and floating gates. Including: solid-state drive (SSD), SD card and USB drive
    4 Describe what is meant by virtual memory, how it is created and used and why it is necessary • Pages of data are transferred between RAM and virtual memory when needed
    5 Understand what is meant by cloud storage • Cloud storage can be accessed remotely in comparison to storing data locally
    6 Explain the advantages and disadvantages of storing data on the cloud in comparison to storing it locally • Physical servers and storage are needed to store data in cloud storage
    日本語
    受験者は以下的能力を備えているべきである: メモおよびガイドライン
    1 プライマリストレージの意味を理解する • プライマリストレージはCPUによって直接アクセスされる • 以下の役割を含む: – ランダムアクセスメモリ(RAM) – リードオンリーメモリ(ROM) • コンピュータがRAMとROMの両方が必要とする理由、およびそれらの違いを含む
    2 セカンドリストレージの意味を理解する • セカンドリストレージはCPUによって直接アクセスされず、データのより永続的な保存に不可欠である
    3 磁気、光、**固体状(フラッシュメモリ)**ストレージの動作を説明し、それぞれの例を挙げる • 磁気ストレージはプラッターを使用し、トラックとセクターに分割されている。データは電磁石を用いて読み書きされる。ハードディスクドライブ(HDD)を含む • 光ストレージはレーザーを使用してピットとランドを作成して読み取る。CD、DVD、Blu-rayを含む • 固体状(フラッシュメモリ)ストレージはNANDまたはNOR技術を使用する。トランジスタが制御ゲートおよびフローティングゲートとして使用される。ソリッドステートドライブ(SSD)、SDカード、USBメモリを含む
    4 仮想メモリの意味、その作成方法と使用方法、そしてなぜ必要とされるかを説明する • 必要な時にデータページがRAMと仮想メモリの間で転送される
    5 クラウドストレージの意味を理解する • クラウドストレージは、データをローカルに保存する場合と比較して、遠隔地からアクセス可能である
    6 クラウドストレージにデータを保存することと、ローカルに保存することの比較における利点と欠点を説明する • クラウドストレージにデータを保存するには、物理サーバーおよびストレージが必要である

    Source: Cambridge International syllabus · ⁨出典: Cambridge International シラバス⁩

    English

    Cloud storage 云存储 keeps your data on remote physical servers, reached over the internet, instead of on your own device.

    • Advantages: reach it from anywhere on any device; no local storage hardware to buy or maintain; easy to share files and to back up automatically.
    • Disadvantages: needs a working internet connection; an ongoing subscription cost; security and privacy depend on the provider; you rely on that provider staying available and in business.
    日本語

    Cloud storage 云存储 keeps your data on remote physical servers, reached over the internet, instead of on your own device.

    • Advantages: reach it from anywhere on any device; no local storage hardware to buy or maintain; easy to share files and to back up automatically.
    • Disadvantages: needs a working internet connection; an ongoing subscription cost; security and privacy depend on the provider; you rely on that provider staying available and in business.
    Data-centre server racks: cloud storage keeps your files on remote servers you reach over the network
    Data-centre server racks: cloud storage keeps your files on remote servers you reach over the network
    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    Cloud storage/klaʊd ˈstɔːrɪdʒ/ クラウドストレージ
    3.4

    Network hardware

    Syllabus · ⁨シラバス⁩
    Candidates should be able to: Notes and guidance
    1 Understand that a computer needs a network interface card (NIC) to access a network
    2 Understand what is meant by, and the purpose of, a media access control (MAC) address, including its structure • A network interface card is given a MAC address at the point of manufacture • MAC addresses are usually written as hexadecimal • MAC addresses are created using the manufacturer code and the serial code
    3 (a) Understand what is meant by, and the purpose of, an internet protocol (IP) address (b) Understand that there are different types of IP address • An IP address is allocated by the network and it can be static or dynamic • Including the characteristics of, and differences between, IPv4 and IPv6
    4 Describe the role of a router in a network • A router sends data to a specific destination on a network • A router can assign IP addresses • A router can connect a local network to the internet

    Source: Cambridge International syllabus · ⁨出典: Cambridge International シラバス⁩

    English

    Network interface card (NIC)

    A network interface card 网络接口卡 (NIC) is the hardware that lets a device join a network and send and receive data. Each NIC has a built-in MAC address.

    MAC address and IP address

    • A MAC address (media access control 介质访问控制 address) is a number that identifies one physical device. The maker sets it, and it does not normally change. It is written in hexadecimal.
    • An IP address (internet protocol 网际协议 address) is a number that identifies a device on a network. It is given by the network and can change.

    So a MAC address stays with the device, while an IP address depends on the network the device is using.

    There are two versions of IP address. IPv4 is 32-bit, written as four denary numbers 0–255 (for example 192.168.0.1); the newer IPv6 is 128-bit, written as eight groups of hexadecimal separated by colons, giving vastly more addresses. An address is also either static 静态 (fixed, set by hand and never changing) or dynamic 动态 (handed out by the router/network each time the device connects, so it can change).

    Router

    A router 路由器 connects different networks together — for example, your home network to the internet. It reads the IP address in each packet and forwards it towards the right network.

    日本語

    Network interface card (NIC)

    A network interface card 网络接口卡 (NIC) is the hardware that lets a device join a network and send and receive data. Each NIC has a built-in MAC address.

    MAC address and IP address

    • A MAC address (media access control 介质访问控制 address) is a number that identifies one physical device. The maker sets it, and it does not normally change. It is written in hexadecimal.
    • An IP address (internet protocol 网际协议 address) is a number that identifies a device on a network. It is given by the network and can change.

    So a MAC address stays with the device, while an IP address depends on the network the device is using.

    There are two versions of IP address. IPv4 is 32-bit, written as four denary numbers 0–255 (for example 192.168.0.1); the newer IPv6 is 128-bit, written as eight groups of hexadecimal separated by colons, giving vastly more addresses. An address is also either static 静态 (fixed, set by hand and never changing) or dynamic 动态 (handed out by the router/network each time the device connects, so it can change).

    Router

    A router 路由器 connects different networks together — for example, your home network to the internet. It reads the IP address in each packet and forwards it towards the right network.

    A Wi-Fi router: network hardware forwards packets between devices and the wider Internet
    A Wi-Fi router: network hardware forwards packets between devices and the wider Internet
    Explore · ⁨探索⁩

    Network route lab · ⁨ネットワークルート実験⁩

    Follow data from a device through network hardware and protocols. · ⁨デバイスからネットワークハードウェアおよびプロトコルを経てデータを追跡せよ。⁩

    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    network interface card/ˈnetwɜːk ˈɪntəfeɪs kɑːd/ ネットワークインターフェースカード
    static/ˈstætɪk/ 静的
    dynamic/daɪˈnæmɪk/ 動的
    router/ˈruːtə/ ルーター
    fetch-execute cycle/fetʃ ˈeksɪkjuːt ˈsaɪkl/ fetch-execute cycle(fetch-executeサイクル)
    media access control/ˈmiːdiːə ˈækses kənˈtrəʊl/ メディアアクセスコントロール
    internet protocol/ˈɪntənet ˈprəʊtəkɒl/ インターネットプロトコル
    3.4

    Exam tips

    • Learn the fetch–decode–execute cycle and the special registers: the program counter holds the address of the next instruction, the MAR/MDR carry the address/data, and the accumulator holds the ALU's result.
    • CPU performance improves with more cores, a larger cache, and a higher clock speed.
    • RAM is volatile (it loses its data with no power) and holds programs in use; ROM is non-volatile and read-only (the start-up instructions).
    • Match the secondary-storage types: magnetic (HDD, tape), optical (CD/DVD, read by a laser), solid state (SSD, USB, flash — no moving parts).
    • A MAC address identifies the physical device and does not normally change; an IP address is given by the network and can change.
  • 4

    Software · ⁨ソフトウェア⁩

    Watch lesson · ⁨レッスンを視聴⁩
    4.1

    Hardware and software · ⁨ハードウェアとソフトウェア⁩

    English

    A computer system is made of two parts that work together.

    • Hardware 硬件 is the physical 物理的 parts of the computer — the parts you can touch. Examples: the CPU, memory, keyboard, screen and hard disk.
    • Software 软件 is the programs 程序 that control the computer and tell the hardware what to do.

    Hardware cannot do anything useful on its own. Software needs hardware to run on. Both are needed.

    日本語

    コンピュータシステムは、協力して動作する2つの部分から構成されています。

    ハードウェアは物理的な部品(CPU、キーボード)であり、ソフトウェアはプログラム(アプリ、OS)です
    ハードウェアは物理的な部品、ソフトウェアはプログラム
    • ハードウェアとは、コンピュータの物理的な部品、つまり触れることのできる部分です。例:CPU、メモリ、キーボード、スクリーン、ハードディスク。
    • ソフトウェアとは、コンピュータを制御し、ハードウェアに何をすべきかを指示するプログラムです。

    ハードウェアだけでは何も有用なことはできません。ソフトウェアは動作するためにハードウェアが必要です。両方が必要です。

    チップ、スロット、コネクターを備えたコンピュータのマザーボード
    マザーボードとそこに接続された部品はハードウェアです - 触れることのできる物理的な部品
    画面に表示されたデスクトップOS
    オペレーティングシステムはソフトウェアです - ハードウェアに何をすべきかを指示するプログラム
    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    Hardware/ˈhɑːdweə/ ハードウェア
    physical/ˈfɪzɪkl/ 物理
    Software/ˈsɒftweə/ ソフトウェア
    programs/ˈprəʊɡræmz/ プログラム
    4.1

    Types of software · ⁨ソフトウェアの種類⁩

    Syllabus · ⁨シラバス⁩
    English
    Candidates should be able to: Notes and guidance
    1 Describe the difference between system software and application software and provide examples of each • System software provides the services that the computer requires, including operating system and utility software • Application software provides the services that the user requires
    2 Describe the role and basic functions of an operating system • Including: – managing files – handling interrupts – providing an interface – managing peripherals and drivers – managing memory – managing multitasking – providing a platform for running applications – providing system security – managing user accounts
    3 Understand how hardware, firmware and an operating system are required to run applications software • Applications are run on the operating system • The operating system is run on the firmware • The bootloader (firmware) is run on the hardware
    4 Describe the role and operation of interrupts • Including: – how an interrupt is generated – how it is handled using an interrupt service routine – what happens as a result of the interrupts • Software interrupts include division by zero and two processes trying to access the same memory location • Hardware interrupts include pressing a key on the keyboard and moving the mouse
    日本語
    受験者は以下的能力を備えているべきである: メモおよびガイドライン
    1 システムソフトウェアとアプリケーションソフトウェアの違いを説明し、それぞれの例を挙げよ • システムソフトウェアはコンピュータが必要とするサービスを提供する(OSやユーティリティソフトなど)。アプリケーションソフトウェアはユーザーが必要とするサービスを提供する
    2 オペレーティングシステムの役割と基本機能について説明する • 以下を含む: – ファイル管理 – インターラプト処理 – インターフェース提供 – パリファリとドライバ管理 – メモリ管理 – マルチタスク管理 – アプリケーション実行プラットフォームの提供 – システムセキュリティの提供 – ユーザーアカウント管理
    3 ハードウェア、ファームウェアおよびオペレーティングシステムがアプリケーションソフトウェアを実行するためにどのように必要であるかを理解する • アプリケーションはオペレーティングシステム上で実行される • オペレーティングシステムはファームウェア上で実行される • ブートローダー(ファームウェア)はハードウェア上で実行される
    4 インターラプトの役割と動作について説明する • 以下を含む: – インターラプトが発生する仕組み – インターラプトサービスルーティンを用いた処理方法 – インターラプトによる結果 • ソフトウェアインターラプトには、ゼロ除算や2つのプロセスが同一のメモリ位置にアクセスしようとする場合が含まれる • ハードウェアインターラプトには、キーボードのキーを押下することやマウスを動かすことが含まれる

    Source: Cambridge International syllabus · ⁨出典: Cambridge International シラバス⁩

    English

    Software is split into two types.

    System software

    System software 系统软件 controls the computer itself and gives a base for other programs to run on. Examples:

    • operating system 操作系统 (see below);
    • compiler 编译器 and linker 链接器 (tools that turn programs into a form the computer can run);
    • device driver 设备驱动程序 — software that lets the operating system control a piece of hardware;
    • utility software 实用程序 — small tools that look after the computer (for example anti-virus, backup, disk clean-up).

    Below the operating system sits firmware 固件 – software stored permanently on ROM or flash that runs the moment the computer is switched on. The BIOS and the bootloader 引导程序 are firmware: they test the hardware and then load the operating system. So the layers stack up hardware → firmware → operating system → application software, each running on the layer below.

    Application software

    Application software 应用软件 lets the user do a useful task. Examples:

    • word processing 文字处理 software (writing documents);
    • spreadsheet 电子表格 software (working with numbers in a grid);
    • database management system 数据库管理系统 (storing and searching data);
    • web browser 网页浏览器 (viewing web pages).
    System software Application software
    Job runs and manages the computer helps the user do a task
    Used by the computer (in the background) the user (directly)
    Examples operating system, drivers, utilities word processor, browser, games
    日本語

    ソフトウェアは2つの種類に分けられます。

    木型図:Software(ソフトウェア)をsystem software(システムソフトウェア:オペレーティングシステム、ユーティリティ、ドライバー、コンパイラ)とapplication software(アプリケーションソフトウェア:ワードプロセッサ、スプレッドシート、データベース、ブラウザ)に分けています
    ソフトウェアはシステムソフトウェア(コンピュータを稼働させる)とアプリケーションソフトウェア(ユーザーがタスクを行うことを可能にする)に分かれます

    システムソフトウェア

    システムソフトウェアはコンピュータ自体を制御し、他のプログラムが動作するための基盤を提供します。例:

    • オペレーティングシステム(以下参照);
    • コンパイラおよびリンカ(プログラムをコンピュータが実行可能な形式に変換するツール);
    • デバイスドライバー - ハードウェアの一部をオペレーティングシステムが制御できるようにするソフトウェア;
    • ユーティリティソフトウェア - コンピュータの手入れを行う小さなツール(例:アンチウイルス、バックアップ、ディスククリーンアップ)。

    オペレーティングシステムの下にはファームウェアがあります。これはROMやフラッシュメモリに永久に格納されており、コンピュータが電源を入れる瞬間に動作するソフトウェアです。BIOSとブートローダーはファームウェアです。これらはハードウェアのテストを行い、その後オペレーティングシステムをロードします。したがって、層はハードウェア → ファームウェア → オペレーティングシステム → アプリケーションソフトウェアという順に積み重なっており、各層は下の層上で動作します。

    アプリケーションソフトウェア

    アプリケーションソフトウェアはユーザーが有用なタスクを行えるようにします。例:

    • ワードプロセッシングソフトウェア(文書の作成);
    • スプレッドシートソフトウェア(グリッド内の数値処理);
    • データベース管理システム(データの保存と検索);
    • ウェブブラウザ(Webページの表示)。
    システムソフトウェア アプリケーションソフトウェア
    役割 コンピュータを稼働・管理する ユーザーのタスク支援
    使用者 コンピュータ(背景で) ユーザー(直接)
    例 オペレーティングシステム、ドライバー、ユーティリティ ワードプロセッサ、ブラウザ、ゲーム
    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    System software/ˈsɪstəm ˈsɒftweə/ システムソフト
    operating system/ˈɒpəreɪtɪŋ ˈsɪstəm/ オペレーティングシステム
    Application software/ˌæplɪˈkeɪʃn ˈsɒftweə/ アプリケーションソフトウェア
    word processing/wɜːd ˈprəʊsesɪŋ/ ワードプロセッシング
    spreadsheet/ˈspredʃiːt/ スプレッドシート
    database management system/ˈdeɪtəbeɪs ˈmænɪdʒmənt ˈsɪstəm/ データベース管理システム
    web browser/web ˈbraʊzə/ ウェブブラウザ
    providing a user interface/prəˈvaɪdɪŋ ə ˈjuːzə ˈɪntəfeɪs/ ユーザーインターフェースを提供する
    managing peripherals/ˈmænɪdʒɪŋ pəˈrɪfərəlz/ 周辺機器を管理する
    managing multitasking/ˈmænɪdʒɪŋ ˈmʌltitæskɪŋ/ マルチタスクを管理する
    providing a platform/prəˈvaɪdɪŋ ə ˈplætfɔːm/ プラットフォームを提供する
    4.1

    The operating system · ⁨オペレーティングシステム⁩

    English

    An operating system (OS) is the main system software. It controls the whole computer and lets the hardware, the application software and the user work together. Without an OS the computer is very hard to use.

    The OS has many roles:

    • managing files — saving, opening, naming, moving and deleting files;
    • handling interrupts (see below);
    • providing a user interface 用户界面 so the user can control the computer;
    • managing memory — deciding what is kept in RAM and where;
    • managing peripherals 外围设备 and their drivers — controlling devices like printers;
    • managing multitasking 多任务处理 — letting several programs run at once;
    • providing a platform 平台 for running application software;
    • managing security — user accounts, passwords and access rights.
    日本語

    オペレーティングシステム(OS)は主要なシステムソフトウェアです。コンピュータ全体を制御し、ハードウェア、アプリケーションソフトウェア、ユーザーが協力して動作できるようにします。OSがない場合、コンピュータの使用は極めて困難になります。

    4つの積み重ねた層 - 最上段にユーザー、次にアプリケーションソフトウェア、次にオペレーティングシステム、最下段にハードウェア
    オペレーティングシステムはハードウェアとアプリケーションソフトウェアおよびユーザーの間に位置し、それらが協力して動作することを可能にします

    OSには多くの役割があります:

    • ファイル管理 - ファイルの保存、開く、命名、移動、削除;
    • インタラプト処理(以下参照)
    • ユーザーインターフェースを提供することで、ユーザーがコンピュータを操作できるようにする;
    • メモリを管理する — RAMに何を保持し、どこに配置するかを決定する;
    • 周辺機器とそのドライバーを管理する — プリンタなどのデバイスを制御する;
    • マルチタスクを管理する — 複数のプログラムを同時に実行させる;
    • アプリケーションソフトウェアを実行するためのプラットフォームを提供する;
    • セキュリティを管理する — ユーザアカウント、パスワード、アクセス権限の管理。
    4.1

    Interrupts · ⁨中断⁩

    English

    An interrupt 中断 is a signal sent to the processor 处理器 to tell it that something needs attention now.

    An interrupt can come from three sources:

    • hardware — for example a key is pressed, or a printer runs out of paper;
    • software — for example a program tries to divide by zero;
    • the user — for example the user presses a "cancel" key.

    When an interrupt arrives, the processor stops what it is doing, saves its place, and services (deals with) the interrupt. When that is done, it goes back to what it was doing before. This lets the computer react quickly to important events.

    日本語

    割り込みとは、プロセッサに対して「今すぐ注意が必要である」ことを知らせる信号のことです。

    割り込みは以下の3つのソースから発生します:

    • ハードウェア — キーを押したときや、プリンタの紙が尽きたときなど;
    • ソフトウェア — プログラムがゼロで除算を試みたときなど;
    • ユーザー — ユーザーが「キャンセル」キーを押したときなど。

    割り込みが発生すると、プロセッサは現在行っている作業を停止して位置を保存し、割り込みを**処理(対応)**します。処理が終わると、以前行っていた作業に戻ります。これにより、コンピュータは重要なイベントに素早く反応できます。

    サイクル:メインプログラムの実行、割り込み発生時にCPUが状態を保存し、割り込みサービスルーチンを実行し、状態を復元して再続行する
    割り込み发生时、CPUは位置を保存し、割り込みサービスルーチンを実行した後、位置を復元して継続する
    Explore · ⁨探索⁩

    How the CPU handles an interrupt · ⁨CPUが割り込みを処理する方法⁩

    Step through an interrupt. The CPU pauses what it's doing, deals with the urgent event, then carries on exactly where it left off — which is how one processor juggles the keyboard, printer and timer at once. · ⁨割り込みの手順。CPUは現在の作業を一時停止し、緊急イベントに対応した後、直前に中断されていた地点から正確に再開する——これが単一のプロセッサがキーボード、プリンタ、タイマーを同時に制御できる理由である。⁩

    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    interrupt/ˈɪntərʌpt/ 割り込み
    processor/ˈprəʊsesə/ プロセッサー
    central processing unit/ˈsentrəl ˈprəʊsesɪŋ ˈjuːnɪt/ 中央処理装置(CPU)
    programming language/ˈprəʊɡræmɪŋ ˈlæŋɡwɪdʒ/ プログラミング言語
    high-level language/haɪ ˈlevl ˈlæŋɡwɪdʒ/ 高レベル言語
    low-level language/ləʊ ˈlevl ˈlæŋɡwɪdʒ/ 低レベル言語
    machine code/məˈʃiːn kəʊd/ 機械語
    assembly language/əˈsemblɪ ˈlæŋɡwɪdʒ/ アセンブリ言語
    specific/spəˈsɪfɪk/ 特定の
    translator/trænˈsleɪtə/ 翻訳器
    4.2

    Programming languages · ⁨プログラミング言語⁩

    Syllabus · ⁨シラバス⁩
    English
    Candidates should be able to: Notes and guidance
    1 Explain what is meant by a high-level language and a low-level language, including the advantages and disadvantages of each • Advantages and disadvantages include: – ease of reading and writing code, e.g. low-level is hard to read – ease of debugging code – machine independence – direct manipulation of hardware
    2 Understand that assembly language is a form of low-level language that uses mnemonics, and that an assembler is needed to translate an assembly language program into machine code
    3 Describe the operation of a compiler and an interpreter, including how high-level language is translated by each and how errors are reported • A compiler translates the whole code at once before executing it, producing an executable file • An interpreter translates and executes the code line-by-line • A compiler provides an error report for the whole code if errors are detected • An interpreter stops execution when an error is found
    4 Explain the advantages and disadvantages of a compiler and an interpreter • Including an understanding that an interpreter is mostly used when developing a program and a compiler is used to translate the final program
    5 Explain the role of an IDE in writing program code and the common functions IDEs provide • Including: – code editors – run-time environment – translators – error diagnostics – auto-completion – auto-correction – prettyprint
    日本語
    受験者は以下的能力を備えているべきである: メモおよびガイドライン
    1 ハイレベル言語およびローレベル言語の意味を説明し、それぞれの利点と欠点を述べる • 利点と欠点には以下が含まれる: コードの読み書きの容易さ(例: ローレベル言語は読みにくい)、コードのデバッグの容易さ、機械依存性の有無、ハードウェアへの直接操作
    2 アセンブリ言語がmnemonicsを使用するローレベル言語の一種であり、アセンブラが必要であり、アセンブリ言語プログラムをマシンコードへ翻訳することを理解する
    3 コンパイラおよびインタプリタの動作について説明し、ハイレベル言語がそれぞれによってどのように翻訳され、エラーがどのように報告されるかを示す • コンパイラは実行する前にコード全体を一度に翻訳し、実行可能ファイルを作成する • インタプリタはコードを各行ごとに翻訳して実行する • コンパイラはエラーを検出した場合、コード全体に対するエラーレポートを提供する • インタプリタはエラーが見つかったら実行を停止する
    4 コンパイラおよびインタプリタの利点と欠点を説明する • インタプリタは主にプログラムの開発時に使用され、コンパイラは最終的なプログラムを翻訳するために使用されるという理解を含む
    5 IDEがプログラムコードの作成において果たす役割と、IDEが提供する一般的な機能について説明する • 以下を含む: コードエディタ、ランタイム環境、トランスレーター、エラー診断、自動補完、自動修正、prettyprint

    Source: Cambridge International syllabus · ⁨出典: Cambridge International シラバス⁩

    English

    All computers process data using the central processing unit 中央处理器 (CPU). To make the CPU do work, people write programs in a programming language 编程语言. There are two kinds.

    High-level languages

    A high-level language 高级语言 is written in words that look a bit like English (for example Python). It is:

    • easy for people to read, write and fix;
    • independent of the computer — the same program can run on different types of computer.

    Low-level languages

    A low-level language 低级语言 is close to what the hardware actually uses. It includes:

    • machine code 机器码 — instructions written in binary (0s and 1s), which the CPU runs directly;
    • assembly language 汇编语言 — machine code written with short word codes (mnemonics) instead of binary.

    A low-level language relates to the specific 特定的 type of CPU, so a program written for one CPU may not run on another. It is used when the programmer needs full control of the hardware or very fast, small code.

    日本語

    すべてのコンピュータはデータ処理を中央処理装置 (CPU) を用いて行います。CPUに作業を行わせるために、人々はプログラミング言語でプログラムを書きます。大きく分けて2種類あります。

    ハイレベル言語

    ハイレベル言語は、英語に似た言葉で書かれます(例:Python)。以下の特徴があります:

    • 人間にとって読みやすく、書きやすく、修正しやすい;
    • コンピュータに依存しない — 同じプログラムを異なる種類のコンピュータで実行可能。

    ロレベル言語

    ロレベル言語は、ハードウェアが実際に使用するものに近いものです。以下を含みます:

    • 機械語 — 二進数(0と1)で書かれた命令であり、CPUが直接実行する。
    • アセンブリ言語 — 二進数の代わりに短い単語コード(ミモニック)で記述された機械語。

    ロレベル言語は特定のCPUタイプに関連するため、あるCPU向けに書かれたプログラムが別のCPUでは動作しないことがあります。プログラマーがハードウェアへの完全な制御や、非常に高速かつコンパクトなコードを必要とする場合に使用されます。

    3つの重なり合う層:最上部が高レベル言語、その下にアセンブリ、最下部に機械語
    ハイレベル言語は人間に近い言語であり、あらゆるコンピュータで実行可能;ロレベル言語(アセンブリと機械語)はハードウェアに近い言语であり、あるタイプのCPUに限定される
    Explore · ⁨探索⁩

    Computing concept lab · ⁨コンピューティング概念ラボ⁩

    Classify concrete examples by the computing idea they demonstrate. · ⁨具体的な例を、それが示すコンピューティングのアイデアに基づいて分類せよ。⁩

    4.2

    Translators · ⁨トランスレーター⁩

    English

    The CPU can only run machine code. A high-level program must first be changed into machine code. The software that does this is a translator 翻译程序. There are three types: a compiler and an interpreter (for high-level code), and an assembler (for low-level code).

    Compiler

    A compiler translates the whole program into machine code before it is run. After translating, the machine code can be run many times without translating again.

    • translation happens once, in full;
    • it reports all the errors together, at the end of translating;
    • the finished program runs fast and does not need the compiler to run.

    Interpreter

    An interpreter 解释器 translates and runs the program one line at a time.

    • it stops at the first error it finds, which helps when testing;
    • the program runs more slowly, because it is translated each time it runs;
    • the interpreter must be present every time the program runs.
    Compiler Interpreter
    Translates the whole program at once one line at a time
    Errors all reported at the end stops at the first error
    Speed of finished program faster slower
    Needed to run later? no yes

    Use a compiler when you want to share a fast, finished program. Use an interpreter when you are writing and testing a program and want to find errors easily.

    Assembler

    An assembler 汇编器 translates a low-level assembly-language program (written in mnemonics such as LDA, ADD) into machine code. Each mnemonic becomes one machine instruction – a direct one-to-one translation, unlike a compiler or interpreter, which work on high-level code.

    Worked example. A team is writing a program. While developing it they want to find and fix errors quickly; when they ship it they want customers to run it fast without seeing the source code. Which translator suits each stage? While developing, use an interpreter: it translates and runs one line at a time and stops at the first error, so a mistake is easy to locate. To ship, use a compiler: it translates the whole program once into machine code, which then runs quickly with no translator present, and the customer receives only the executable rather than the source. The two are not rivals - name the stage and give the reason, because "a compiler is faster" on its own earns nothing.

    日本語

    CPUは機械語のみを実行できます。ハイレベルのプログラムはまず機械語に変換する必要があります。この変換を行うソフトウェアをトランスレーターと呼びます。3つの種類があります:ハイレベルコード用のコンパイラとインタプリタ、およびロレベルコード用のアセンブラです。

    コンパイラ

    コンパイラは、プログラムを実行する前に、全プログラムを一度だけ機械語に変換します。変換後は、再度変換することなく、機械語を何度も実行できます。

    • 変換は一度だけで完了します;
    • 変換終了後にすべてのエラーを一括して報告します;
    • 完成したプログラムは高速に動作し、コンパイラを起動する必要がありません。

    インタープリタ

    インタプリタは、プログラムを1行ずつ変換しながら実行します。

    • 発見された最初のエラーで停止するため、テスト時に便利です;
    • 毎回変換されるため、プログラムの実行速度が遅くなります;
    • プログラムを実行するたびに、インタプリタが存在している必要があります。
    コンパイラ インタプリタ
    翻訳 プログラム全体を一度に 1行ずつ
    エラー 末尾で一括報告 最初のエラーで停止
    完成プログラムの速度 速い 遅い
    後で実行するために必要? いいえ はい

    高速で完成したプログラムを共有したい場合はコンパイラを使用します。プログラムを作成・テスト中であり、エラーを容易に見つけたい場合はインタプリタを使用します。

    アセンブラ

    アセンブラは、mnemonics(例:LDA, ADD)などで書かれたロレベルのアセンブリ言語プログラムを機械語に変換します。各mnemonicは1つの機械指令に変換されるため、コンパイラやインタプリタのように高レベルコードを扱うものとは異なり、直接的な1対1の変換となります。

    コンパイラが一度だけプログラム全体を機械語に変換して複数回実行させるのに対し、インタプリタは各行を変換しながら順次実行する
    コンパイラは全プログラムを一度だけ機械語に変換し、インタプリタは1行ずつ変換・実行する

    ** worked example.** チームがプログラムを作成しています。開発中に素早くエラーを見つけ・修正したい場合、リリース時には顧客が高速で実行でき、かつソースコードを見られないようにしたい場合、どのトランスレーターが各段階に適していますか?開発時にはインタプリタを使用します:1行ずつ変換・実行し、最初のエラーで停止するため、ミスの特定が容易です。リリース時にはコンパイラを使用します:全プログラムを一度だけ機械語に変換するため、トランスレーターなしでも高速に動作し、顧客には実行ファイルのみが提供され、ソースコードは含まれません。これら2つは競合関係ではありません。段階を指定し、理由を述べてください。「コンパイラの方が速い」という理由だけでは得点できません。

    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    compiler/kəmˈpaɪlə/ コンパイラ
    linker/ˈlɪŋkə/ リンカー
    device driver/dɪˈvaɪs ˈdraɪvə/ デバイスドライバ
    utility software/juːˈtɪlɪti ˈsɒftweə/ ユーティリティソフト
    firmware/ˈfɜːmweə/ ファームウェア
    bootloader/ˈbuːtləʊdə/ ブートローダー
    interpreter/ɪnˈtɜːprɪtə/ インタプリタ
    assembler/əˈsemblə/ アセンブラ
    integrated development environment/ˈɪntɪɡreɪtɪd dɪˈveləpmənt enˈvaɪrənmənt/ 統合開発環境
    code editor/kəʊd ˈedɪtə/ コードエディタ
    run time environment/rʌn taɪm enˈvaɪrənmənt/ 実行時環境
    error diagnostics/ˈerə ˌdaɪəɡˈnɒstɪks/ エラー診断
    auto-completion/ˈɔːtəʊ kəmˈpliːʃn/ オートコンプリート
    auto-correction/ˈɔːtəʊ kəˈrekʃn/ オート修正
    4.2

    Integrated development environment (IDE) · ⁨インテ格里テッド開発環境 (IDE)⁩

    English

    An integrated development environment 集成开发环境 (IDE) is software that helps you write programs. It puts many useful tools in one place:

    • a code editor 代码编辑器 — for typing in your program;
    • a run time environment 运行时环境 — for running the program to test it;
    • a translator — a compiler or interpreter to turn your code into machine code;
    • error diagnostics 错误诊断 — messages that help you find and understand mistakes;
    • auto-completion 自动补全 and auto-correction 自动纠错 — the IDE finishes or fixes code as you type;
    • prettyprinting 美化打印 — laying out the code neatly with colour and indentation so it is easy to read.
    日本語

    インテ格里テッド開発環境 (IDE) は、プログラム作成をサポートするソフトウェアです。有用なツールを1か所に集約しています:

    • コードエディタ — プログラムを入力するために使用;
    • ランタイム環境 — テストのためにプログラムを実行するために使用;
    • トランスレーター — コンパイラまたはインタプリタを用いてコードを機械語に変換;
    • エラー診断メッセージ — ミスを見つけたり理解したりするのを助けるメッセージ;
    • オートコンプリートとオートコレクション — 入力中にIDEがコードを補完または修正する機能;
    • prettyprinting — コードを色付けとインデントで整然と配置し、読みやすくする。
    エディタ内のソースコード: IDEはエディタ、デバッガー、実行ツールを1つの場所に統合している
    エディタ内のソースコード: IDEはエディタ、デバッガー、実行ツールを1つの場所に統合している
    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    prettyprinting/ˈpretɪprɪntɪŋ/ prettyprinting
    user interface/ˈjuːzə ˈɪntəfeɪs/ ユーザーインターフェース
    peripherals/pəˈrɪfərəlz/ 周辺機器
    multitasking/ˈmʌltitæskɪŋ/ マルチタスク
    platform/ˈplætfɔːm/ プラットフォーム
    4.2

    Exam tips · ⁨試験対策⁩

    English
    • Hardware is the physical parts; software is the programs. System software runs the computer (OS, drivers, utilities); application software does a task for the user.
    • A compiler translates the whole program at once (the finished program runs fast, and all errors are reported at the end); an interpreter translates line by line (it stops at the first error, runs slower, and is needed every time).
    • High-level languages are close to English and run on any computer; low-level languages (assembly, machine code) are tied to one type of CPU.
    • An interrupt is a signal that makes the CPU stop, save its place, service the event, then carry on where it left off.
    • Learn the operating system's roles: managing files, memory, peripherals, multitasking, security and the user interface.
    日本語
    • ハードウェア は物理的な部品であり、ソフトウェア はプログラムである。システムソフトウェア はコンピュータを動作させる(OS、ドライバー、ユーティリティ);アプリケーションソフトウェア はユーザーのためにタスクを実行する。
    • コンパイラはプログラム全体を一括して変換する(完成したプログラムは高速に動作し、すべてのエラーは最後に報告される)。一方、インタプリタは各行を順次変換・実行する(最初のエラーで停止し、動作が遅く、毎回必要となる)。
    • 高レベル言語 は英語に近い形式でどのコンピュータでも動作する;低レベル言語(アセンブリ、機械語)は特定のCPUタイプに依存する。
    • 割り込み はCPUを停止させ、現在の位置を保存し、イベントに対応した後、中断された地点から继续する信号である。
    • オペレーティングシステムの役割を学ぶ:ファイル管理、メモリ管理、周辺機器管理、マルチタスク、セキュリティ、ユーザーインターフェース。
  • 5

    The internet and its uses · ⁨インターネットおよびその用途⁩

    Watch lesson · ⁨レッスンを視聴⁩
    5.1

    The internet and the world wide web · ⁨インターネットとワールドワイドウェブ⁩

    Syllabus · ⁨シラバス⁩
    English
    Candidates should be able to: Notes and guidance
    1 Understand the difference between the internet and the world wide web • The internet is the infrastructure • The world wide web is the collection of websites and web pages accessed using the internet
    2 Understand what is meant by a uniform resource locator (URL) • A URL is a text-based address for a web page; it can contain the protocol, the domain name and the web page/file name
    3 Describe the purpose and operation of hypertext transfer protocol (HTTP) and hypertext transfer protocol secure (HTTPS)
    4 Explain the purpose and functions of a web browser • The main purpose of a web browser is to render hypertext markup language (HTML) and display web pages • Functions include: – storing bookmarks and favourites – recording user history – allowing use of multiple tabs – storing cookies – providing navigation tools – providing an address bar
    5 Describe how web pages are located, retrieved and displayed on a device when a user enters a URL • Including the role of: – the web browser – IP addresses – the domain name server (DNS) – the web server – HTML
    6 Explain what is meant by cookies and how they are used, including session cookies and persistent cookies • Cookies are used for functions, including: – saving personal details – tracking user preferences – holding items in an online shopping cart – storing login details
    日本語
    受験者は以下的能力を備えているべきである: メモおよびガイドライン
    1 インターネットとワールドワイドウェブの違いを理解する • インターネットはインフラストラクチャである • ワールドワイドウェブはインターネットを使用してアクセスされるウェブサイトおよびウェブページの集合体である
    2 **earer resource locator (URL)**の意味を理解する • URLはウェブページのテキストベースのアドレスであり、プロトコル、ドメイン名、およびウェブページ/ファイル名を含めることができる
    3 **hypertext transfer protocol (HTTP)およびhypertext transfer protocol secure (HTTPS)**の目的と動作について説明する
    4 ウェブブラウザの目的と機能について説明する • ウェブブラウザの主な目的は、hyper text markup language (HTML) をレンダリングし、ウェブページを表示することである • 機能には以下が含まれる: ブックマークおよびお気に入りの保存、ユーザー履歴の記録、複数タブの使用許可、クッキーの保存、ナビゲーションツールの提供、アドレスバーの提供
    5 ユーザーがURLを入力した際に、ウェブページがどのように特定、取得、およびデバイス上で表示されるかを説明する • 以下の役割を含む: ウェブブラウザ、IPアドレス、ドメインネームサーバー (DNS)、Webサーバー、HTML
    6 クッキーの意味と使用方法を説明し、セッションクッキーおよび永続クッキーも含める • クッキーは以下の機能に使用される: 個人情報の保存、ユーザーの嗜好の追跡、オンラインショッピングカートにおけるアイテムの保持、ログイン情報の保存

    Source: Cambridge International syllabus · ⁨出典: Cambridge International シラバス⁩

    English

    People often mix up these two terms, but they are not the same.

    • The internet 互联网 is the infrastructure 基础设施 — the huge worldwide network of computers and the cables, routers and connections that join them.
    • The world wide web 万维网 (WWW) is a collection of websites 网站 and web pages that you view using the internet.

    So the internet is the network; the web is one of the things you use on that network.

    日本語

    この2つの用語はよく混同されるが、異なる概念である。

    • インターネット はインフラストラクチャ、すなわち膨大な世界的なコンピュータネットワークと、それらを接続するケーブル、ルーター、接続部である。
    • ワールドワイドウェブ(WWW)は、インターネットを利用して閲覧するウェブサイトやWebページの集合体である。

    つまり、インターネットはネットワークそのものであり、ウェブはそのネットワーク上で利用される機能の一つである。

    インターネットとラベル付けされた大きな箱の中に、2つの小さい箱が含まれており、それぞれWorld Wide Webと、メールなどのその他のサービスを表している
    インターネットは世界的なネットワークであり、ワールドワイドウェブはその上で利用される機能の一つである
    黒い箱型のルーターに3本の長いアンテナが立っている写真
    ルーターは家庭用ネットワークをインターネットに接続し、データを正しい場所へ送る
    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    internet/ˈɪntənet/ インターネット
    infrastructure/ˈɪnfrəstrʌktʃə/ インフラ
    world wide web/wɜːld waɪd web/ ワールドワイドウェブ
    websites/ˈwebsaɪts/ ウェブサイト
    uniform resource locator/ˈjuːnɪfɔːm rɪˈzɔːs ləʊˈkeɪtə/ earer resource locator
    web browser/web ˈbraʊzə/ ウェブブラウザ
    rendering/ˈrendərɪŋ/ レンダリング
    hypertext markup language/ˈhaɪpətekst ˈmɑːkʌp ˈlæŋɡwɪdʒ/ ハイパーテキストマークアップ言語
    IP address/ˌaɪ ˈpiː əˈdres/ IPアドレス
    domain name service/dəˈmeɪn neɪm ˈsɜːvɪs/ ドメインネームサービス
    web server/web ˈsɜːvə/ Webサーバー
    session/ˈseʃn/ セッション
    persistent/pəˈsɪstənt/ persistent
    user preferences/ˈjuːzə ˈprefrənsɪz/ ユーザー設定
    digital currency/ˈdɪdʒɪtl ˈkʌrənsi/ デジタル通貨
    electronic form/ɪlekˈtrɒnɪk fɔːm/ 電子フォーム
    5.1

    URL

    English

    A uniform resource locator 统一资源定位符 (URL) is a text-based address for a web page. You type it into a web browser 网页浏览器 to visit a page, for example https://www.example.com/index.html.

    日本語

    URL(earer resource locator)とは、Webページのテキストベースの住所である。Webブラウザ に入力してページにアクセスする。例として https://www.example.com/index.html が挙げられる。

    URL https://www.example.com/index.html を3つのラベル付き部分に分割した図:プロトコル、ドメイン名、パス
    URLには3つの部分がある:プロトコル、ドメイン名、サーバー上のページへのパス
    5.1

    The web browser · ⁨ウェブブラウザ⁩

    English

    A web browser is the program you use to view web pages. Its role includes:

    • rendering 渲染 the hypertext markup language 超文本标记语言 (HTML) — turning the page's code into what you see;
    • displaying web pages on the screen;
    • managing how a web page is presented — its layout, text and images.
    日本語

    WebブラウザはWebページを表示するために使用するプログラムである。その役割には以下が含まれる:

    • ハイパーテキストマークアップ言語(HTML)のレンダリング — ページのコードを視覚的に表示される内容に変換すること;
    • スクリーン上にWebページを表示すること;
    • Webページの表示方法の管理 — レイアウト、テキスト、画像など。
    5.1

    How a web page reaches you · ⁨Webページがあなたに届く仕組み⁩

    English

    When you type a URL and press enter, several steps happen:

    1. The browser needs the website's IP address 网际协议地址, but a URL uses a name, not a number.
    2. The browser asks a domain name service 域名服务 (DNS) — a system that stores the IP address for each web address.
    3. The DNS finds the matching IP address and sends it back to the browser.
    4. The browser uses the IP address to contact the web server 网页服务器 that stores the page.
    5. The web server sends the page's HTML back to the browser.
    6. The browser turns the HTML into the page and displays it.

    If the DNS does not have the address, it asks another DNS server until the address is found.

    Worked example. Break down the URL https://www.example.com/books/index.html. https is the protocol, the set of rules used to transfer the page (the s means the transfer is encrypted). www.example.com is the domain name, which identifies the web server and which a DNS server turns into an IP address. /books/index.html is the file path and file name of the resource stored on that server. Name each part together with its job: an answer that says "the first bit" and "the last bit" describes the URL without ever explaining it.

    日本語

    URLを入力してエンターキーを押すと、以下の手順が行われる:

    1. ブラウザにはサイトのIPアドレスが必要だが、URLには名前が使われ、数字ではない。
    2. ブラウザは各WebアドレスのIPアドレスを格納するシステムであるドメインネームサービス(DNS)に照合する。
    3. DNSが対応するIPアドレスを検索し、ブラウザに送信する。
    4. ブラウザはIPアドレスを使用して、ページを格納しているWebサーバーに接続する。
    5. WebサーバーがページのHTMLをブラウザへ送信する。
    6. ブラウザがHTMLをページに変換して表示する。
    ブラウザがDNSサーバーにIPアドレスを問い合わせ、Webサーバーからページを要求し、HTMLを受信する様子
    ブラウザがDNSにサイトのIPアドレスを問い合わせ、Webサーバーからページを要求すると、HTMLが返ってくる

    DNSにそのアドレスがない場合、見つかるまで別のDNSサーバーに問い合わせ続ける。

    データセンター内、青いライトが点灯する金属ラックに並んだ多数のコンピュータサーバー
    サーバーで溢れたデータセンター:ウェブサイトを格納し、あなたに送信する強力なコンピュータ

    ** worked example.** URL https://www.example.com/books/index.html を分解する。https はプロトコルであり、ページを転送するためのルールセットである(s は転送が暗号化されていることを示す)。www.example.com はドメイン名であり、Webサーバーを識別し、DNSサーバーによってIPアドレスに変換される。/books/index.html は、そのサーバーに格納されているリソースのファイルパスおよびファイル名である。各部分とその役割を名称で答える。「最初の部分」や「最後の部分」という表現だけでは、URLを説明していないことになる。

    Explore · ⁨探索⁩

    What happens when you load a web page · ⁨ウェブページを読み込むとき、何が起こるのか⁩

    Step through it. The web address is just a name — DNS turns it into an IP address before the browser can ask the right server for the page. · ⁨順を追って確認します。Webアドレスは単なる名称に過ぎず、ブラウザが正しいサーバーにページを要求する前に、DNSによってIPアドレスに変換されます。⁩

    5.1

    Cookies · ⁨クッキー⁩

    English

    A cookie is a small text file that a website stores on your device. It lets the website remember things about you. There are two types.

    Type Kept when you close the browser? Used for
    session 会话 cookie no — deleted when you close the browser short-term data, e.g. items in a shopping basket
    persistent 持久 cookie yes — saved on the device remembering you between visits

    Cookies are used to:

    • save personal details so you do not type them again (such as login or address);
    • track user preferences 用户偏好, such as your language or the things you like, so the site can suggest content.
    日本語

    クッキー とは、ウェブサイトがあなたのデバイスに格納する小さなテキストファイルである。これにより、ウェブサイトはあなたの情報を記憶できる。2つの種類がある。

    クッキーとは、あなたの設定やログイン情報を記憶するためにコンピュータに保存される小さなテキストファイルです
    クッキーはコンピュータ上に保存された小さなテキストファイル
    種類 ブラウザを閉じた後も保持されるか? 用途
    セッション クッキー いいえ — ブラウザを閉じると削除される 短期間のデータ、例:ショッピングカートの商品
    永続的 クッキー はい — デバイスに保存される 訪問間でのユーザー記憶

    クッキーは次のために使用される:

    • 個人情報を読み込むことで、再度入力を不要にする(ログイン情報や住所など);
    • ユーザーの嗜好を追跡することで、言語設定や好みのコンテンツなどを记忆し、サイトがコンテンツを提案できるようにする。
    5.2

    Digital currency · ⁨デジタル通貨⁩

    Syllabus · ⁨シラバス⁩
    English
    Candidates should be able to: Notes and guidance
    1 Understand the concept of a digital currency and how digital currencies are used • A digital currency is one that only exists electronically
    2 Understand the process of blockchain and how it is used to track digital currency transactions • Blockchain, in its basic form, is a digital ledger, that is a time-stamped series of records that cannot be altered
    日本語
    受験者は以下的能力を備えているべきである: メモおよびガイドライン
    1 デジタル通貨の概念を理解し、デジタル通貨がどのように使用されるかを知る • デジタル通貨とは、電子のみで存在する通貨である
    2 ブロックチェーンのプロセスを理解し、それがどうやってデジタル通貨の取引を追跡するために使用されるかを知る • ブロックチェーンは基本的な形では、デジタル.blocksとして、改ざんできないタイムスタンプ付きのレコードの系列である

    Source: Cambridge International syllabus · ⁨出典: Cambridge International シラバス⁩

    English

    A digital currency 数字货币 is money that exists only in electronic form 电子形式. There are no coins or notes. It is stored and moved between people using computers, and can be used to pay for things online.

    A problem with digital money is trust: how do you stop someone spending the same money twice, or changing the records? Blockchain solves this.

    日本語

    デジタル通貨 とは、電子形式 でのみ存在するお金である。硬貨や紙幣はない。コンピュータを用いて人与人之间で保管・移動され、オンラインでの支払いに使用できる。

    デジタルマネーの問題点は信頼性にある:同じお金を二度使ったり、記録を改変したりしないようにどうするかである。ブロックチェーンはこの問題を解決する。

    5.2

    Blockchain · ⁨ブロックチェーン⁩

    English

    A blockchain 区块链 is a digital ledger 数字账本 — a shared record of every transaction 交易. The record is copied across many computers, so no single person controls it and it is very hard to change.

    The transactions are kept in blocks joined in a chain. Each block holds:

    • the data of the transaction (who paid whom, and how much);
    • a timestamp 时间戳 (the date and time);
    • a hash value 哈希值 — a special code worked out from the block's contents.

    Each block also stores the hash of the block before it. If someone changes an old block, its hash changes, so it no longer matches the next block. This breaks the chain and the change is spotted at once. This is how blockchain tracks transactions safely.

    日本語

    ブロックチェーン とは、デジタル台帳、すなわちすべての取引の共有記録である。この記録は多数のコンピュータに複製されるため、単一の個人が管理することはできず、変更も極めて困難である。

    取引はチェーン状に接続されたブロックに格納される。各ブロックには以下の情報が含まれる:

    • 取引のデータ(誰が誰に、いくら送ったか)
    • タイムスタンプ(日付と時刻);
    • ハッシュ値 — ブロックの内容から算出された特別なコード。

    各ブロックは、その前のブロックのハッシュも格納しています。もし古いブロックが改ざんされると、ハッシュ値が変わり、次のブロックとの整合性が取れなくなります。これによりチェーンが切断され、変化は即座に検知されます。これがブロックチェーンで取引を安全に追跡する仕組みです。

    チェーン内の3つのブロック、それぞれデータ、タイムスタンプ、ハッシュを保持し、各ブロックは前のブロックのハッシュも格納している
    各ブロックは前のブロックのハッシュを格納してブロックをつなげており、1つのブロックを変更するとチェーンが切断される
    Explore · ⁨探索⁩

    Hashing behind a blockchain · ⁨ブロックチェーンの背後にあるハッシュ化⁩

    A hash is one-way and a tiny change to the input flips much of the output — a blockchain chains these hashes so any tamper is obvious. · ⁨ハッシュは一方向性を持ち、入力にわずかな変化を与えると出力の大部分が変更されます。ブロックチェーンはこのハッシュを連鎖させることで、改ざんがあれば容易に検出できます。⁩

    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    blockchain/ˈblɒktʃeɪn/ ブロックチェーン
    digital ledger/ˈdɪdʒɪtl ˈledʒə/ デジタル帳簿
    transaction/trænˈsækʃn/ 取引
    timestamp/ˈtaɪmstæmp/ タイムスタンプ
    hash value/hæʃ ˈvæljuː/ ハッシュ値
    cyber security/ˈsaɪbə sɪˈkjʊərɪti/ サイバーセキュリティ
    brute force attack/bruːt fɔːs əˈtæk/ ブルートフォース攻撃
    data interception/ˈdeɪtə ˌɪntəˈsepʃn/ データ傍受
    distributed denial of service/ˈdɪstrɪbjuːtɪd dɪˈnaɪəl ɒv ˈsɜːvɪs/ distributed denial of service(分散DoS攻撃)
    hacking/ˈhækɪŋ/ ハッキング
    malware/ˈmælweə/ マルウェア
    pharming/ˈfɑːmɪŋ/ ファーマリング
    phishing/ˈfɪʃɪŋ/ フィッシング
    social engineering/ˈsəʊʃl ˌendʒɪˈnɪərɪŋ/ ソーシャルエンジニアリング
    virus/ˈvaɪrəs/ ウイルス
    worm/wɜːm/ ワーム(コンピュータ病毒)
    Trojan horse/ˈtrəʊdʒn hɔːs/ トロイの木馬
    spyware/ˈspaɪweə/ スパイウェア
    adware/ˈædweə/ アダウェア
    ransomware/ˈrænsəmweə/ ランサムウェア
    access levels/ˈækses ˈlevlz/ アクセス権限
    anti-malware/ˈænti ˈmælweə/ マルウェア対策ソフト
    anti-virus/ˈænti ˈvaɪrəs/ antivirus
    anti-spyware/ˈænti ˈspaɪweə/ スパイウェア除去ソフト
    authentication/ɔːˌθentɪˈkeɪʃn/ 認証
    biometrics/ˌbaɪəʊˈmetrɪks/ 生体認証
    password/ˈpæswɜːd/ パスワード
    two-step verification/tuː step ˌverɪfɪˈkeɪʃn/ 二段階認証
    5.3

    Cyber security threats · ⁨サイバーセキュリティ脅威⁩

    Syllabus · ⁨シラバス⁩
    English
    Candidates should be able to: Notes and guidance
    1 Describe the processes involved in, and the aim of carrying out, a range of cyber security threats • Including: – brute-force attack – data interception – distributed denial of service (DDoS) attack – hacking – malware (virus, worm, Trojan horse, spyware, adware, ransomware) – pharming – phishing – social engineering
    2 Explain how a range of solutions are used to help keep data safe from security threats • Including: – access levels – anti-malware, including anti-virus and anti-spyware – authentication (username and password, biometrics, two-step verification) – automating software updates – checking the spelling and tone of communications – checking the URL attached to a link – firewalls – privacy settings – proxy-servers – secure socket layer (SSL) security protocol
    日本語
    受験者は以下的能力を備えているべきである: メモおよびガイドライン
    1 多様なサイバーセキュリティ脅威を行うことに関わるプロセスおよびその目的を説明する • 以下を含む: ブルートフォース攻撃、データ傍受、分散型服務妨害攻撃 (DDoS)、ハッキング、マルウェア(ウイルス、ワーム、トロイの木馬、スパイウェア、広告軟件、ランサムウェア)、ファーマー、フィッシング、ソーシャルエンジニアリング
    2 多様な解決策が、セキュリティ脅威からデータを安全に保つためにどのように使われるかを説明する • 以下を含む: アクセス権限、アンチマルウェア(アンチウイルスおよびアンチスパイウェア含む)、認証(ユーザー名とパスワード、生体認証、2段階認証)、ソフトウェアアップデートの自動化、コミュニケーションのスペルとトーンの確認、リンクに添付されたURLの確認、ファイアウォール、プライバシー設定、プロキシサーバー、secure socket layer (SSL) セキュリティプロトコル

    Source: Cambridge International syllabus · ⁨出典: Cambridge International シラバス⁩

    English

    Cyber security 网络安全 means keeping computers, networks and data safe from attack. You must know these threats.

    Threat What it is
    brute force attack 暴力破解 trying many passwords very quickly until the right one is found
    data interception 数据拦截 "listening in" to steal data while it travels across a network
    distributed denial of service 分布式拒绝服务 (DDoS) attack flooding a server with so many requests that it cannot respond, so the website goes down
    hacking 黑客攻击 gaining access to a computer system without permission
    malware 恶意软件 harmful software (see the table below)
    pharming 域名欺骗 secret code sends you to a fake website even when you type the correct address
    phishing 网络钓鱼 fake emails or messages that trick you into giving away private details
    social engineering 社会工程 tricking a person (not a computer) into breaking security, e.g. pretending to be the boss

    Types of malware

    Malware is any software made to harm a computer. The main types are:

    Malware What it does
    virus 病毒 attaches to a file and copies itself when the file is opened; can delete or damage data
    worm 蠕虫 copies itself across a network on its own, without needing a file to be opened
    Trojan horse 特洛伊木马 pretends to be useful software, but harms the computer once installed
    spyware 间谍软件 secretly records what you do, such as the keys you press
    adware 广告软件 floods you with unwanted adverts
    ransomware 勒索软件 locks your files and demands payment to unlock them

    Impact of the threats

    These attacks can steal personal data, delete or change files, stop a service from working, cost money, and make users lose trust in a company. For example, a DDoS attack can make an online shop unusable, so it loses sales.

    日本語

    サイバーセキュリティとは、コンピュータ、ネットワーク、データを攻撃から守ることを指します。これらの脅威について知る必要があります。

    脅威 内容
    ブルートフォース攻撃 正しいパスワードが見つかるまで、非常に多くのパスワードを素早く試すこと
    データ傍受 ネットワーク上を転送中のデータを盗むために「聞き取り」を行うこと
    分散型サービス妨害攻撃 (DDoS) サーバーに要求を過剰に送り込み応答できなくして、ウェブサイトがダウンさせること
    ハッキング 許可なくコンピュータシステムへのアクセスを得ること
    マルウェア 有害なソフトウェア(以下の表参照)
    ファーマリング 正しいアドレスを入力しても、秘密のコードによって偽のウェブサイトに誘導されること
    フィッシング 個人情報を漏洩させてしまうようにだますための偽メールやメッセージ
    ソーシャルエンジニアリング コンピュータではなく人間をだましてセキュリティを破る(例:上司を装うこと)

    マルウェアの種類

    マルウェアとはコンピュータを損なうために作られたすべてのソフトウェアを指します。主な種類は以下の通りです:

    マルウェア 行うこと
    ウイルス ファイルに付着し、ファイルが開かれると自身を複製します;データを削除したり破損させたりする可能性があります
    ワーム ファイルを開く必要 없이ネットワーク全体に自ら複製して伝播します
    トロイの木馬 有用なソフトウェアであるかのように装いますが、インストールされた後にコンピュータを害します
    スパイウェア キーボード入力など、ユーザーの行動を密かに記録します
    広告ウェア 不要な広告で溢れさせます
    ランサムウェア ファイルをロックし、解除のために支払いを要求します

    脅威の影響

    これらの攻撃は、個人情報の窃取、ファイルの削除や改変、サービスの停止、金銭的損失、および顧客からの信頼喪失を引き起こすことがあります。例えば、DDoS攻撃によりオンラインショップが利用できなくなると、売上が減少します。

    パッドロック:マルウェア、フィッシング、無断アクセスからデータとシステムを守るサイバーセキュリティ
    パッドロック:マルウェア、フィッシング、無断アクセスからデータとシステムを守るサイバーセキュリティ
    5.3

    Keeping data safe · ⁨データ保護⁩

    English

    You can protect data using these methods.

    • access levels 访问权限 — each user can only see or change the data they need, nothing more.
    • anti-malware 反恶意软件 software, including anti-virus 杀毒软件 and anti-spyware 反间谍软件 — scans for and removes harmful software.
    • authentication 身份验证 — proving who you are before you get access. Methods include:
      • biometrics 生物识别 (fingerprint or face),
      • a password 密码,
      • two-step verification 两步验证 (a code sent to your phone as well as a password).
    • automating software updates — updates fix weak points (bugs) in software automatically.
    • checking the spelling and tone of messages — bad spelling or an odd, urgent tone can show a message is fake (phishing).
    • checking the URL attached to a link — a wrong or strange web address warns you the link is unsafe.
    • firewall 防火墙 — checks data going in and out of a network and blocks anything not allowed.
    • privacy settings 隐私设置 — control who can see your information online.
    • proxy server 代理服务器 — sits between the user and the internet, hiding the user's IP address and filtering out unsafe content.
    日本語

    以下の方法を使ってデータを保護できます。

    • アクセス権限 — ユーザーは必要なデータのみを見たり変更したりでき、それ以上はできません。
    • アンチマルウェア ソフトウェア、アンチウイルス および アンチスパイウェア を含む — 有害なソフトウェアを検索して除去します。
    • 認証 — アクセス前に自身の身元を確認すること。方法には以下が含まれます:
      • 生体認証(指紋や顔認識)、
      • パスワード、
      • 二段階認証(パスワードに加え、スマートフォンに送信されるコード)。
    • ソフトウェアアップデートの自動化 — アップデートは自動的にソフトウェアの脆弱性(バグ)を修正します。
    • メッセージのスペルとトーンの確認 — 誤字や不自然で急ぎのトーンは、メッセージが偽物である可能性(フィッシング)を示唆します。
    • リンクに添付されたURLの確認 — 間違ったまたは奇妙なWebアドレスは、リンクが不安全であることを警告します。
    • ファイアウォール — ネットワークへの入出力データを確認し、許可されていないものをブロックします。
    • プライバシー設定 — オンライン上で誰が自分の情報を見られるかを制御します。
    インターネットとプライベートネットワークの間に設置されたファイアウォール、許可された接続は通過させ、他の接続をブロックしている
    ファイアウォールは外部インターネットとネットワークの間に位置し、すべての接続をチェックし、許可されていないトラフィックはすべてブロックする。
    • プロキシサーバー — ユーザーとインターネットの間に位置し、ユーザーのIPアドレスを隠蔽し、不安全なコンテンツをフィルタリングします。
    Explore · ⁨探索⁩

    Encryption with a key · ⁨鍵による暗号化⁩

    Change the shift — that is the key. Each letter slides that many places to make ciphertext, and the same key slides it back. That is symmetric encryption. · ⁨シフト(ずらし量)を変えることが鍵である。各文字はその数だけずれて暗号文となり、同じ鍵で逆方向にずらすことで復号される。これが対称暗号である。⁩

    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    firewall/ˈfaɪəwɔːl/ ファイアウォール
    privacy settings/ˈprɪvəsi ˈsetɪŋz/ プライバシー設定
    proxy server/ˈprɒksi ˈsɜːvə/ プロキシサーバー
    5.3

    Exam tips · ⁨試験対策⁩

    English
    • The internet is the worldwide network (the infrastructure); the world wide web is the pages you view on it — do not mix the two up.
    • Learn how a page loads: the browser asks a DNS for the site's IP address, then requests the page from the web server, which returns the HTML.
    • Match the malware types: virus (attaches to a file), worm (spreads by itself across a network), Trojan horse (pretends to be useful), spyware, ransomware.
    • Match each threat to a defence: phishing/pharming → check the URL; brute force → strong passwords + two-step verification; interception → encryption; hacking/DDoS → a firewall.
    • A session cookie is deleted when you close the browser; a persistent cookie is saved to remember you between visits.
    日本語
    • インターネット は世界的なネットワーク(インフラストラクチャ)であり、ワールドワイドウブ はその上で表示されるページです。この2つを混同しないでください。
    • ページの読み込み方法を学ぶ:ブラウザはサイトのIPアドレスを DNS に照会し、Webサーバー からページをリクエストします。WebサーバーはHTMLを返します。
    • マルウェアの種類を対応させる:ウイルス(ファイルに付着)、ワーム(自らネットワークを拡散)、トロイの木馬(有用なsoftwareを装う)、スパイウェア、ランサムウェア。
    • 各脅威に対応する防御策を対応させる:フィッシング/ファーマリング → URLの確認;ブルートフォース → 強いパスワード+二段階認証;傍受 → 暗号化;ハッキング/DDoS → ファイアウォール。
    • セッションクッキー はブラウザを閉じると削除され、永続クッキー は訪問間での記憶のために保存されます。
  • 6

    Automated and emerging technologies · ⁨自動化された技術と新技術⁩

    Watch lesson · ⁨レッスンを視聴⁩
    6.1

    Automated systems · ⁨自動化システム⁩

    Syllabus · ⁨シラバス⁩
    English
    Candidates should be able to: Notes and guidance
    1 Describe how sensors, microprocessors and actuators can be used in collaboration to create automated systems
    2 Describe the advantages and disadvantages of an automated system used for a given scenario • Including scenarios from: – industry – transport – agriculture – weather – gaming – lighting – science
    日本語
    受験者は以下的能力を備えているべきである: メモおよびガイドライン
    1 センサー、マイクロプロセッサ、およびアクチュエータが連携して自動化システムを作成するためにどのように使用されるかを説明する
    2 特定のシナリオに用いられる自動化システムの利点と欠点を説明する • 以下からのシナリオを含む: 産業、輸送、農業、気象、ゲーム、照明、科学

    Source: Cambridge International syllabus · ⁨出典: Cambridge International シラバス⁩

    English

    An automated system 自动化系统 is a mix of software and hardware that senses and responds to data in its environment 环境, with no need for human intervention 人工干预. In other words, it works on its own.

    Examples of automated systems:

    • a central heating 中央供暖 system;
    • a chemical process 化学过程 in a factory;
    • a greenhouse 温室 (for growing plants);
    • a car park barrier 停车场道闸.

    Sensors, microprocessors and actuators

    Three parts work together in an automated system.

    Part Job
    sensor 传感器 measures a physical quantity (such as temperature or light) and sends the data
    microprocessor 微处理器 compares the data with stored values and makes decisions
    actuator 执行器 receives a signal and causes movement or action (such as opening a valve)

    The cycle works like this:

    1. The sensor sends data to the microprocessor.
    2. The microprocessor compares this data with stored values 存储值 and makes a decision.
    3. The microprocessor sends signals to the actuators to take action.

    For example, in a greenhouse: a temperature sensor reads the heat; the microprocessor compares it with the wanted value; if it is too hot, the microprocessor signals an actuator to open a window.

    The syllabus names many sensor types 传感器类型, each reading one physical quantity – for example an accelerometer 加速度计 (movement or tilt), a humidity 湿度 sensor (water in the air), and a proximity 接近 sensor (a nearby object):

    Sensor Measures Typical use
    temperature heat ovens, greenhouses, heating
    light brightness automatic lights, cameras
    pressure force on a surface alarm floor mats, touchscreens
    infra-red / proximity a nearby object automatic doors, parking sensors
    acoustic (sound) sound level noise monitors
    humidity / moisture water in air or soil greenhouses, irrigation
    gas a gas being present smoke and CO alarms
    pH acidity pools, fish tanks
    accelerometer movement or tilt phones, airbag triggers
    magnetic field magnetism door contacts, compasses
    flow / level fluid flow or depth pipes, tanks

    To pick a sensor for a scenario, choose the one that reads the right physical quantity: a fish tank needs pH and temperature sensors; an automatic door needs an infra-red / proximity sensor.

    Advantages and disadvantages

    Automated systems are used in many situations, such as industry, transport, agriculture 农业 (farming), weather (gathering data), gaming and lighting.

    Advantages Disadvantages
    work all day and night, without rest cost a lot to buy and set up
    faster and more consistent 一致的 than people can break down and need expert repair
    can work in places unsafe for people may replace people's jobs
    fewer human mistakes cannot easily react to a situation they were not built for

    Worked example. Describe how an automatic greenhouse holds the temperature at 25 °C. A temperature sensor continuously measures the temperature and sends its reading, converted to digital by an ADC, to the microprocessor. The microprocessor compares the reading with the stored value of 25 °C. If the temperature is above it, the microprocessor signals an actuator to open a window or switch on a fan; if it is below, it switches on a heater. The whole loop then repeats continuously. Two marks nearly always sit on the words "compares with a stored (pre-set) value" and "the process repeats" - a description that stops at "the sensor tells the computer" leaves them behind.

    日本語

    自動化システム は、環境 のデータを感知して反応するソフトウェアとハードウェアの組み合わせであり、人間の介入 が不要です。つまり、単独で動作します。

    自動化システムの例:

    • 中央暖房システム;
    • 工場の化学プロセス;
    • 温室(植物栽培用);
    • 駐車場ゲート。

    センサ、マイクロプロセッサ、アクチュエータ

    自動化システムでは、3つの部品が連携して機能します。

    部位 役割
    センサ 物理量(温度や光など)を測定し、データを送信する
    マイクロプロセッサ データを格納された値と比較し、意思決定を下す
    アクチュエータ シグナルを受け取り、移動や作用(バルブの開閉など)を引き起こす

    このサイクルは以下のように機能します:

    1. センサーはマイクロプロセッサにデータを送信する。
    2. マイクロプロセッサはこのデータを記憶された値と比較し、判断を下す。
    3. マイクロプロセッサはアクチュエータに信号を送り、動作を行う。

    例えば、温室の場合:温度センサーが熱を測定し、マイクロプロセッサがそれを目的の値と比較します。暑すぎる場合は、マイクロプロセッサがアクチュエータに信号を出して窓を開けます。

    ループ:温度センサーがマイクロプロセッサにデータを送り、それがアクチュエータに窓を開けるよう信号を出し、温室が冷却され、センサーが再度測定する
    センサーがマイクロプロセッサにデータを送り、読み取り値が記憶された値と比較され、アクチュエータに信号が出されます;ループは繰り返される

    カリキュラムでは多くのセンサーの種類が挙げられており、それぞれが異なる物理量を測定します。例えば、加速度計(動きや傾き)、湿度センサー(空気中の水分)、近接センサー(近くの物体)などです:

    センサー 測定物 一般的な用途
    温度 熱 オーブン、温室、暖房装置
    光 明るさ 自動照明、カメラ
    圧力 表面にかかる力 警報用敷物、タッチスクリーン
    赤外線 / 近接 近くの物体 自動ドア、駐車センサー
    音響(音声) 音のレベル ノイズモニター
    湿度 / 湿気 空気または土壌中の水分 温室、灌漑
    ガス ガスの存在 煙探知器、CO警報器
    pH 酸性度 プール、水槽
    加速度計 動きや傾き 携帯電話、エアバッグ作動
    磁場 磁力 ドア接触センサー、コンパス
    流量 / レベル 流体の流れや深さ パイプ、タンク

    特定のシナリオに適したセンサーを選ぶ際は、適切な物理量を測定できるものを選びます。例えば、水槽にはpHと温度センサーが必要であり、自動ドアには赤外線/近接センサーが必要です。

    メリットとデメリット

    自動化システムは、工業、交通、農業(耕作)、気象観測(データ収集)、ゲーム、照明など、多くの分野で用いられています。

    自動化システムの利点(24/7での稼働や一貫性)と欠点(高いセットアップコストや失業)を比較した図
    自動化システムのメリットとデメリット
    海の上の空を飛ぶ、小型カメラ付きの白い4ロータードローン
    カメラ付きドローン: 指定されたルートに沿って自律飛行し、データを収集する。
    利点 欠点
    昼夜を問わず作業可能、休憩不要 購入および設定コストが高い
    人間より速く、一貫性が高い 故障する可能性があり、専門的な修理が必要
    人間にとって危険な場所でも作業可能 人間の仕事を取代する可能性がある
    人為的ミスの減少 設計されていない状況への対応が容易ではない

    ** worked example.** 自動温室が温度を 25 °C に保つ仕組みを説明してください。温度センサーが連続的に温度を測定し、ADCによってデジタル変換されたその値をマイクロプロセッサに送信します。マイクロプロセッサは、この値が格納されている 25 °C の値と比較します。温度がそれより高い場合、マイクロプロセッサはアクチュエータに信号を送って窓を開けたりファンを回したりします;低い場合はヒーターを点灯させます。このループは常に繰り返されます。2点配分問題は通常、「格納された(事前設定)値と比較する」と「プロセスが繰り返される」の語句に当てられます。「センサーがコンピュータに知らせる」だけで記述を止めてしまうと、これらのポイントを得ることができません。

    Explore · ⁨探索⁩

    An automated control loop · ⁨自動制御ループ⁩

    Tap round the loop. An automated system senses, compares against a target, then acts — and because the action changes what it senses, it keeps correcting itself with no human needed. · ⁨ループをタップします。自動システムは、環境を検知し、目標値と比較して動作します。この動作が検知内容を変化させるため、システムは人間の介入なしに自らを修正し続けます。⁩

    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    automated system/ˈɔːtəmeɪtɪd ˈsɪstəm/ 自動化システム
    environment/enˈvaɪrənmənt/ 環境
    human intervention/ˈhjuːmən ˌɪntəˈvenʃn/ 人的介入
    greenhouse/ˈɡriːnhaʊs/ 温室効果
    car park barrier/kɑː pɑːk ˈbærɪə/ 駐車場バリア
    sensor/ˈsensə/ センサー
    microprocessor/ˌmaɪkrəʊˈprəʊsesə/ マイクロプロセッサ
    actuator/ˈæktʃuːeɪtə/ アクチュエータ
    stored values/stɔːd ˈvæljuːz/ 記憶値
    sensor types/ˈsensə taɪps/ センサータイプ
    accelerometer/əkˌseləˈrɒmɪtə/ 加速度計
    humidity/hjuːˈmɪdɪti/ 湿度
    proximity/prɒkˈsɪmɪti/ 近接
    consistent/kənˈsɪstənt/ 一貫した
    Robotics/rəʊˈbɒtɪks/ ロボット工学
    robots/ˈrəʊbɒts/ ロボット
    physical structure/ˈfɪzɪkl ˈstrʌktʃə/ 物理構造
    electrical components/ɪˈlektrɪkl kəmˈpəʊnənts/ 電気部品
    programmable instructions/ˈprəʊɡrəməbl ɪnˈstrʌkʃnz/ プログラム可能な指令
    factory equipment/ˈfæktəri ɪˈkwɪpmənt/ 工場設備
    domestic appliances/dəˈmestɪk əˈplaɪənsɪz/ 家庭用家電
    vacuum cleaner/ˈvækjuːm ˈkliːnə/ 掃除機
    lack of independent decision-making/læk ɒv ˌɪndɪˈpendənt dɪˈsɪʒn ˈmeɪkɪŋ/ 自律的な意思決定の欠如
    Artificial intelligence/ˌɑːtɪˈfɪʃl ɪnˈtelɪdʒəns/ 人工知能
    simulation/ˌsɪmjʊˈleɪʃn/ シミュレーション
    rules/ruːlz/ 制限する
    reason/ˈriːzn/ 理性
    draw conclusions/drɔː kənˈkluːʒnz/ 結論を導き出す
    approximate/əˈprɒksɪmət/ 近似
    definite/ˈdefɪnət/ 明確な
    learn/lɜːn/ 学習
    adapt/əˈdæpt/ 適応する
    expert systems/ˈekspɜːt ˈsɪstəmz/ エキスパートシステム
    natural language processing/ˈnætʃərəl ˈlæŋɡwɪdʒ ˈprəʊsesɪŋ/ 自然言語処理
    self-driving cars/self ˈdraɪvɪŋ kɑːz/ 自動運転車
    knowledge base/ˈnɒlɪdʒ beɪs/ 知識ベース
    rule base/ruːl beɪs/ ルールベース
    inference engine/ˈɪnfərəns ˈendʒɪn/ 推論エンジン
    user interface/ˈjuːzə ˈɪntəfeɪs/ ユーザーインターフェース
    Machine learning/məˈʃiːn ˈlɜːnɪŋ/ 機械学習
    narrow AI/ˈnærəʊ ˌeɪ ˈaɪ/ 狭義AI
    general AI/ˈdʒenərəl ˌeɪ ˈaɪ/ 汎用AI
    strong AI/strɒŋ ˌeɪ ˈaɪ/ 強力AI
    central heating/ˈsentrəl ˈhiːtɪŋ/ 集中暖房
    chemical process/ˈkemɪkl ˈprəʊses/ 化学プロセス
    agriculture/ˈæɡrɪkʌltʃə/ 農業
    mechanical/mɪˈkænɪkl/ 機械的
    6.2

    Robotics · ⁨ロボティクス⁩

    Syllabus · ⁨シラバス⁩
    English
    Candidates should be able to: Notes and guidance
    1 Understand what is meant by robotics • Robotics is a branch of computer science that incorporates the design, construction and operation of robots • Examples include factory equipment, domestic robots and drones
    2 Describe the characteristics of a robot • Including: – a mechanical structure or framework – electrical components, such as sensors, microprocessors and actuators – programmable
    3 Understand the roles that robots can perform and describe the advantages and disadvantages of their use • Robots can be used in areas including: – industry – transport – agriculture – medicine – domestic settings – entertainment
    日本語
    受験者は以下的能力を備えているべきである: メモおよびガイドライン
    1 ロボティクスの意味を理解する • ロボティクスは、ロボットの設計、構築、運用を統合するコンピュータ科学の分野である • 例として、工場設備、家庭用ロボット、ドローンがある
    2 ロボットの特徴を説明する • 以下を含む: – 機械的構造またはフレームワーク – センサー、マイクロプロセッサ、アクチュエータなどの電気部品 – プログラマブル性
    3 ロボットが果たす役割を理解し、その使用における利点と欠点を説明する • ロボットは以下の分野で使用される: – 産業 – 輸送 – 農業 – 医療 – 家庭環境 – エンターテインメント

    Source: Cambridge International syllabus · ⁨出典: Cambridge International シラバス⁩

    English

    Robotics 机器人技术 is the branch of technology that deals with the design, building and operation of robots 机器人.

    A robot has these characteristics:

    • a physical structure 物理结构 (a mechanical 机械的 body, such as arms);
    • electrical components 电子元件 (motors, sensors and wiring);
    • programmable instructions 可编程指令 — it follows a program that can be changed.

    What robots do

    Robots can perform many roles, for example:

    • factory equipment 工厂设备 — building cars, welding, moving heavy parts;
    • domestic appliances 家用电器 — such as a robotic vacuum cleaner 吸尘器.
    Advantages Disadvantages
    do dull or dangerous jobs expensive to buy and maintain
    work quickly and accurately can replace human workers
    do not get tired or bored a robot has a lack of independent decision-making 缺乏独立决策 — it only does what it is programmed to do

    A key limit of a robot is that it cannot think for itself. It cannot make its own choices when something unexpected happens.

    日本語

    ロボティクスとは、ロボットの設計、製造、運用を取り扱う技術の分野です。

    ロボットには以下の特徴があります:

    • 物理構造(腕などの機械的身体);
    • 電気部品(モーター、センサー、配線);
    • プログラム可能な指示 — 変更可能なプログラムに従います。

    ロボットの役割

    ロボットは多様な役割を果たせます。例えば:

    • 工場設備 — 自動車の組立、溶接、重部品の移動;
    • 家庭用家電 — 例: robotic 掃除機。
    工場の生産ラインにある白いロボットアーム、周囲にケーブルや金属フレームが見える
    産業用ロボットアーム。プログラムに従って動作し、新しい作業に再プログラムできる
    上から見た丸い平型灰色のロボット掃除機、上面にS、M、Lボタンがある
    ロボット掃除機:床を掃除するために自ら移動する家庭用ロボット
    利点 欠点
    単調または危険な作業を行う 購入および保守コストが高い
    迅速かつ正確に動作する 人間労働者を取代する可能性がある
    疲れず、退屈しない ロボットには自律的な意思決定の欠如がある — プログラムされたことしか行わない

    ロボットの重要な限界は、自ら考えることができない点にあります。予期せぬ事態发生时に、自分自身の選択を下すことはできません。

    Explore · ⁨探索⁩

    Computing concept lab · ⁨コンピューティング概念ラボ⁩

    Classify concrete examples by the computing idea they demonstrate. · ⁨具体的な例を、それが示すコンピューティングのアイデアに基づいて分類せよ。⁩

    6.3

    Artificial intelligence · ⁨人工知能⁩

    Syllabus · ⁨シラバス⁩
    English
    Candidates should be able to: Notes and guidance
    1 Understand what is meant by artificial intelligence (AI) • AI is a branch of computer science dealing with the simulation of intelligent behaviours by computers
    2 Describe the main characteristics of AI as the collection of data and the rules for using that data, the ability to reason, and it can include the ability to learn and adapt
    3 Explain the basic operation and components of AI systems to simulate intelligent behaviour • Limited to: – expert systems – machine learning • Expert systems have a knowledge base, a rule base, an inference engine and an interface • Machine learning is when a program has the ability to automatically adapt its own processes and/or data
    日本語
    受験者は以下的能力を備えているべきである: メモおよびガイドライン
    1 **人工知能(AI)**の意味を理解する • AIは、コンピュータによる知的行動のシミュレーションを取り扱うコンピュータ科学の分野である
    2 AIの主な特徴を説明する。データとその使用方法のルール、推論能力の集まりであり、学習や適応能力を含むことがある
    3 知的行動をシミュレートするためのAIシステムの基本的な動作および構成要素を説明する • 以下に限定: – エキスパートシステム – マシンラーニング • エキスパートシステムには、知識ベース、ルールベース、推論エンジン、インターフェースがある • マシンラーニングとは、プログラムが自身のプロセスや/またはデータを自動的に適応できる能力を持つことである

    Source: Cambridge International syllabus · ⁨出典: Cambridge International シラバス⁩

    English

    Artificial intelligence 人工智能 (AI) is the simulation 模拟 of human intelligence by computer systems. This means a computer doing tasks that normally need human thinking.

    Characteristics of AI

    AI systems usually have these features:

    • they collect data and the rules 规则 for using that data;
    • they have the ability to reason 推理 (work things out using the rules);
    • they have the ability to draw conclusions 得出结论, which may be approximate 近似的 (a best guess) or definite 确定的 (certain);
    • they have the ability to learn 学习 from data;
    • they have the ability to adapt 适应 — to change their behaviour as they get new data.

    Examples of AI

    • expert systems 专家系统 — software that gives advice like a human expert (for example, helping a doctor with a diagnosis);
    • natural language processing 自然语言处理 — understanding human speech or text;
    • self-driving cars 自动驾驶汽车.

    Inside an expert system

    An expert system stores human expertise and reasons from it. It has four parts:

    • a knowledge base 知识库 – the stored facts about the subject;
    • a rule base 规则库 – the "if… then…" rules a human expert would apply;
    • an inference engine 推理引擎 – applies the rules to the facts to reach a conclusion;
    • a user interface 用户界面 – asks the user questions and shows the result.

    The interface collects facts from the user; the inference engine runs the rule base against the knowledge base; and the system outputs a diagnosis or a probability – as used to help a doctor diagnose an illness or to find a car fault.

    Machine learning

    Machine learning 机器学习 is a program that improves its own performance from experience, without being explicitly reprogrammed. It finds patterns in data and adapts: a search engine gets better at ranking results, a voice assistant recognises spoken commands more accurately, and a robot vacuum gradually learns the layout of a room.

    Narrow, general and strong AI

    Type What it means
    narrow AI 弱人工智能 can do only one task or a small set of tasks (for example, a chess program). All AI today is narrow AI.
    general AI 通用人工智能 could do any task a human can do, switching between many different tasks.
    strong AI 强人工智能 would think and be aware like a real human mind. This does not exist yet.
    日本語

    人工知能(AI)とは、コンピューターシステムによる人間の知能のシミュレーションのことです。つまり、通常は人間の思考を必要とするタスクをコンピューターが行うことを意味します。

    AIの特徴

    AIシステムは通常、以下の特徴を持ちます:

    • データを収集し、そのデータを利用するためのルールを持ちます;
    • 推論する能力(ルールを用いて問題を解く力)があります;
    • 結論を導き出す能力があります。これはおおよそ(最大の推測)または確定的(確定)であることがあります;
    • データから学習する能力があります;
    • 適応する能力があります — 新しいデータを得るにつれて行動を変化させます。
    AIシステムをループとして描いた図:データを収集し、ルールを適用しパターンを検出し、決定に基づいて行動し、結果から学習・改善を行い、さらにデータを収集する
    AIシステムはデータを収集し、ルールを適用し、行動し、その後学習して改善する

    AIの例

    • 専門家システム — 人間の専門家のようにアドバイスを提供するソフトウェア(例:医師の診断支援);
    • 自然言語処理 — 人間の音声やテキストを理解すること;
    • 自律走行車(自動運転車)。
    道路を走る小さな白色の自律走行車で、屋根に回転するセンサーが備わっている
    自動運転車:車載センサーによりコンピュータがドライバーなしで操縦する

    エキスパートシステムの中身

    エキスパートシステムは人間の専門知識を格納し、そこから推論を行います。以下の4つの要素で構成されています:

    • 知识ベース(知識基盤) — その分野に関する保存された事実;
    • ルールベース(規則基盤) — 人間が専門家が適用する「if… then…」(もし…なら)のルール;
    • 推論エンジン — ルールと事実を適用して結論に至ります;
    • ユーザーインターフェース — ユーザーに質問を行い、結果を表示します。

    インターフェースはユーザーから事実を収集し、推論エンジンはルールベースを知识ベースに対して実行し、診断または確率を出力します。これは医師が病気を診断したり、車の故障を特定したりするのに使用されます。

    機械学習

    機械学習とは、明示的に再プログラムされることなく、経験によって自身の性能を向上させるプログラムです。データ内のパターンを発見し適応します。検索エンジンは結果の順位付けが改善され、音声アシスタントは音声コマンドの認識精度が高まり、ロボット掃除機は部屋のレイアウトを段階的に学習します。

    限定AI、汎用AI、強力AI

    3つの上昇階段:限定AI(現在のすべてのAI)、汎用AI、強力AI。汎用AIと強力AIは現在存在しないとラベル付けされている
    限定AIは1つのタスクを行う(現在のすべてのAI);汎用AIはあらゆる人間のタスクを行うことができます;強力AIは自己意識を持つ——いずれもまだ存在しない
    タイプ 意味
    限定AI 1つのタスクのみ、または少数のタスクセットを行うこと(例:チェスプログラム)。現在のすべてのAIは限定AIである。
    汎用AI 人間が行えるあらゆるタスクを行うことができ、多くの異なるタスク間で切り替えることができる。
    強力AI 実際の人間の心のように考え、自覚するもの。これはまだ存在しない。
    Explore · ⁨探索⁩

    Computing concept lab · ⁨コンピューティング概念ラボ⁩

    Classify concrete examples by the computing idea they demonstrate. · ⁨具体的な例を、それが示すコンピューティングのアイデアに基づいて分類せよ。⁩

    6.3

    Exam tips · ⁨試験対策⁩

    English
    • Learn the control loop: a sensor measures a quantity → the microprocessor compares it with a stored value → an actuator takes action; then the loop repeats.
    • Do not confuse the parts: a sensor sends data in; an actuator causes movement out.
    • A robot follows programmable instructions and cannot make its own decisions when something unexpected happens.
    • AI simulates human thinking: it collects data and rules, reasons, draws conclusions, and can learn and adapt.
    • Know the AI levels: narrow (one task; all AI today), general (any human task), strong (self-aware; does not exist yet).
    日本語
    • コントロールループを学ぶ:センサーが数量を測定する → マイクロプロセッサが保存された値と比較する → アクチュエータが作用する;その後ループが繰り返される。
    • 部品を混同しない:センサーはデータを入力し、アクチュエータは動きを出力させる。
    • ロボットはプログラム可能な指示に従い、予期せぬことが起きた場合は独自の判断を下せない。
    • AIは人間の思考をシミュレートする:データを收集し、ルールを解析し、推論を行い、結論を導き出し、学習および適応できる。
    • AIのレベルを知る:限定(1つのタスク;現在のすべてのAI)、汎用(あらゆる人間のタスク)、強力(自己意識;まだ存在しない)。
  • 7

    Algorithm design and problem-solving · ⁨アルゴリズム設計と問題解決⁩

    Watch lesson · ⁨レッスンを視聴⁩
    Syllabus · ⁨シラバス⁩
    English
    Candidates should be able to: Notes and guidance
    1 Understand the program development life cycle, limited to: analysis, design, coding and testing • Including identifying each stage and performing these tasks for each stage: – analysis: abstraction, decomposition of the problem, identification of the problem and requirements – design: decomposition, structure diagrams, flowcharts, pseudocode – coding: writing program code and iterative testing – testing: testing program code with the use of test data
    2 (a) Understand that every computer system is made up of sub-systems, which are made up of further sub-systems (b) Understand how a problem can be decomposed into its component parts • Including: – inputs – processes – outputs – storage
    (c) Use different methods to design and construct a solution to a problem • Including: – structure diagrams – flowcharts – pseudocode
    3 Explain the purpose of a given algorithm • Including: – stating the purpose of an algorithm – describing the processes involved in an algorithm
    4 Understand standard methods of solution • Limited to: – linear search – bubble sort – totalling – counting – finding maximum, minimum and average values
    5 (a) Understand the need for validation checks to be made on input data and the different types of validation check • Including: – range check – length check – type check – presence check – format check – check digit
    (b) Understand the need for verification checks to be made on input data and the different types of verification check • Including: – visual check – double entry check
    6 Suggest and apply suitable test data • Limited to: – normal – abnormal – extreme – boundary • Extreme data is the largest/smallest acceptable value • Boundary data is the largest/smallest acceptable value and the corresponding smallest/largest rejected value
    7 Complete a trace table to document a dry-run of an algorithm • Including, at each step in an algorithm: – variables – outputs – user prompts
    8 Identify errors in given algorithms and suggest ways of correcting these errors
    9 Write and amend algorithms for given problems or scenarios, using: pseudocode, program code and flowcharts • Precision is required when writing algorithms, e.g. x > y is acceptable but x is greater than y is not acceptable • See section 4 for flowchart symbols • See section 4 for pseudocode
    日本語
    受験者は以下的能力を備えているべきである: メモおよびガイドライン
    1 プログラム開発ライフサイクルを理解する(以下に限定:分析、設計、コーディング、テスト) • 各段階を特定し、各段階で以下のタスクを実行することを含む: – 分析:抽象化、問題の分解、問題と要件の特定 – 設計:分解、構造図、フローチャート、擬似コード – コーディング:プログラムコードの記述と反復テスト – テスト:テストデータの活用によるプログラムコードのテスト
    2 (a) すべてのコンピュータシステムはサブシステムで構成され、さらにサブシステムからなることを理解する (b) 問題を構成要素に分解する方法を理解する • 以下を含む: – 入力 – プロセス – 出力 – ストレージ
    (c) 問題に対する解決策の設計と構築に異なる手法を用いる • 以下を含む: – 構造図 – フローチャート – 擬似コード
    3 指定されたアルゴリズムの目的を説明する • 以下を含む: – アルゴリズムの目的を述べる – アルゴリズムに関わるプロセスを説明する
    4 標準的な解決方法を理解する • 以下に限定: – 線形探索 – バブルソート – 総和計算 – カウント – 最大値、最小値、平均値の検索
    5 (a) 入力データに対して検証チェックを行う必要性と、検証チェックの異なる種類を理解する • 以下を含む: – レンジチェック – 長さチェック – タイプチェック – 存在チェック – フォーマットチェック – チェックディジット
    (b) 入力データに対して確認チェックを行う必要性と、確認チェックの異なる種類を理解する • 以下を含む: – 視覚チェック – 二重入力チェック
    6 適切なテストデータを提案して適用する • 以下に限定: – 通常 – 異常 – 極端 – 境界 • 極端データは許容される最大値/最小値である • 境界データは許容される最大値/最小値と、対応する最小値/最大値の拒否値である
    7 アルゴリズムのドライランを記録するためにトレース表を完成させる • アルゴリズムの各ステップにおいて、以下を含む: – 変数 – 出力 – ユーザープロンプト
    8 指定されたアルゴリズムの誤りを特定し、修正方法を提案する
    9 指定された問題やシナリオに対して、アルゴリズムを記述・修正する(擬似コード、プログラムコード、フローチャートを使用する) • アルゴリズムを記述する際は正確性が求められる。例:x > y は許容されるが、x is greater than y は許容されない • フローチャートの記号については4節を参照 • 擬似コードについては4節を参照

    Source: Cambridge International syllabus · ⁨出典: Cambridge International シラバス⁩

    7.1

    The program development life cycle

    English

    The program development life cycle 程序开发生命周期 is the set of stages used to make a program. There are four stages.

    Stage What you do
    analysis 分析 study the problem and work out what is needed
    design 设计 plan how the program will work
    coding 编码 write the program code and test it as you go
    testing 测试 run the finished program with test data to find errors

    Analysis

    In analysis you understand the problem. Two key skills help:

    • abstraction 抽象 — keep only the important details and ignore the rest;
    • decomposition 分解 — break a big problem into smaller, easier parts.

    Design

    In design you plan the solution, often using decomposition. You can show the parts as sub-systems 子系统 in a structure diagram 结构图 (a chart that splits a system into smaller boxes).

    Coding and testing

    In coding you write the program code. You use iterative testing 迭代测试 — test small parts again and again as you build them. In testing you run the whole program with test data 测试数据 to check it works.

    日本語

    The program development life cycle 程序开发生命周期 is the set of stages used to make a program. There are four stages.

    A programmer typing code at a computer
    Software is written by programmers, who follow the development life cycle
    Stage What you do
    analysis 分析 study the problem and work out what is needed
    design 设计 plan how the program will work
    coding 编码 write the program code and test it as you go
    testing 测试 run the finished program with test data to find errors
    Four stages in a row — analysis, design, coding, testing — with an arrow feeding back from testing to design
    The four stages of program development; testing feeds back to fix and refine the design
    A program flowchart with process boxes and decision diamonds
    A program flowchart sets out the steps and decisions of a program during the design stage

    Analysis

    In analysis you understand the problem. Two key skills help:

    • abstraction 抽象 — keep only the important details and ignore the rest;
    • decomposition 分解 — break a big problem into smaller, easier parts.

    Design

    In design you plan the solution, often using decomposition. You can show the parts as sub-systems 子系统 in a structure diagram 结构图 (a chart that splits a system into smaller boxes).

    Coding and testing

    In coding you write the program code. You use iterative testing 迭代测试 — test small parts again and again as you build them. In testing you run the whole program with test data 测试数据 to check it works.

    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    program development life cycle/ˈprəʊɡræm dɪˈveləpmənt laɪf ˈsaɪkl/ プログラム開発ライフサイクル
    analysis/əˈnæləsɪs/ 分析
    design/dɪˈzaɪn/ 設計
    coding/ˈkəʊdɪŋ/ コーディング
    testing/ˈtestɪŋ/ テスト
    abstraction/əbˈstrækʃn/ 抽象化
    decomposition/ˌdiːkɒmpəˈzɪʃn/ 分解反応
    sub-systems/sʌb ˈsɪstəmz/ サブシステム
    structure diagram/ˈstrʌktʃə ˈdaɪəɡræm/ 構造図
    iterative testing/ˈɪtərətɪv ˈtestɪŋ/ 反復テスト
    test data/test ˈdeɪtə/ テストデータ
    7.2

    Design tools

    English

    You can plan a solution in three main ways.

    • a structure diagram — shows the parts of a system and how they fit together;
    • a flowchart 流程图 — a diagram using boxes and arrows to show the steps in order;
    • pseudocode 伪代码 — steps written in simple, code-like English (not a real language).
    日本語

    You can plan a solution in three main ways.

    • a structure diagram — shows the parts of a system and how they fit together;
    • a flowchart 流程图 — a diagram using boxes and arrows to show the steps in order;
    • pseudocode 伪代码 — steps written in simple, code-like English (not a real language).
    A flowchart for adding the numbers 1 to n, with start/end, input/output, process and decision symbols, plus a key naming each shape
    A flowchart for the sum algorithm, using the standard symbols (start/end, input/output, process, decision)
    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    flowchart/ˈfləʊtʃɑːt/ フローチャート
    pseudocode/ˈsuːdəʊkəʊd/ 擬似コード
    7.3

    Algorithms

    English
    Bubble sort, pass by pass

    An algorithm 算法 is a set of steps, in the right order, that solves a problem. Every algorithm can be split into three parts:

    • input 输入 — the data that goes in;
    • processing 处理 — the work done on the data;
    • output 输出 — the result that comes out.

    This is called decomposition into inputs, processes and outputs. For example, for "find the average of three marks": the inputs are the three marks; the processing is adding them and dividing by 3; the output is the average.

    日本語
    Bubble sort, pass by pass

    An algorithm 算法 is a set of steps, in the right order, that solves a problem. Every algorithm can be split into three parts:

    • input 输入 — the data that goes in;
    • processing 处理 — the work done on the data;
    • output 输出 — the result that comes out.

    This is called decomposition into inputs, processes and outputs. For example, for "find the average of three marks": the inputs are the three marks; the processing is adding them and dividing by 3; the output is the average.

    Three boxes — INPUT (the 3 marks), PROCESS (add them, divide by 3), OUTPUT (the average) — joined by arrows
    Every algorithm decomposes into input, processing and output — here, finding the average of three marks
    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    algorithm/ˈælɡərɪθəm/ アルゴリズム
    input/ˈɪnpʊt/ 入力
    processing/ˈprəʊsesɪŋ/ 処理
    output/ˈaʊtpʊt/ 出力
    7.4

    Validation and verification

    English

    When data is entered, you check it to reduce mistakes.

    Validation 验证 checks that the data is sensible and follows the rules. It cannot check that the data is true, only that it is allowed.

    Validation check What it checks
    range check 范围检查 the value is between a lowest and highest allowed value
    length check 长度检查 the number of characters is allowed (e.g. a password ≥ 8)
    type check 类型检查 the data is the right type (e.g. a number, not letters)
    presence check 存在性检查 something has actually been entered (not left blank)
    format check 格式检查 the data is in the right pattern (e.g. a date as dd/mm/yyyy)
    check digit 校验码 an extra digit confirms a number was entered correctly

    Verification 核实 checks that data was copied or entered correctly (no mistakes while typing it in). Two methods:

    • visual check 目视检查 — a person compares the typed data with the original;
    • double entry 双重输入 — the data is entered twice and the two copies are compared.
    日本語

    When data is entered, you check it to reduce mistakes.

    Validation 验证 checks that the data is sensible and follows the rules. It cannot check that the data is true, only that it is allowed.

    Validation check What it checks
    range check 范围检查 the value is between a lowest and highest allowed value
    length check 长度检查 the number of characters is allowed (e.g. a password ≥ 8)
    type check 类型检查 the data is the right type (e.g. a number, not letters)
    presence check 存在性检查 something has actually been entered (not left blank)
    format check 格式检查 the data is in the right pattern (e.g. a date as dd/mm/yyyy)
    check digit 校验码 an extra digit confirms a number was entered correctly

    Verification 核实 checks that data was copied or entered correctly (no mistakes while typing it in). Two methods:

    • visual check 目视检查 — a person compares the typed data with the original;
    • double entry 双重输入 — the data is entered twice and the two copies are compared.
    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    validation/ˌvælɪˈdeɪʃn/ 検証
    range check/reɪndʒ tʃek/ 範囲チェック
    length check/leŋθ tʃek/ 長さチェック
    type check/taɪp tʃek/ 型チェック
    presence check/ˈprezəns tʃek/ 存在チェック
    format check/ˈfɔːmæt tʃek/ 形式チェック
    check digit/tʃek ˈdɪdʒɪt/ チェック桁
    verification/ˌverɪfɪˈkeɪʃn/ 確認
    visual check/ˈvɪʒuːəl tʃek/ 視覚的確認
    double entry/ˈdʌbl ˈentri/ 複式簿記
    7.5

    Trace tables

    English

    A trace table 追踪表 records the value of each variable as an algorithm runs, step by step. It helps you:

    • check that an algorithm works correctly;
    • work out what an algorithm does by following it with given data.

    Example: trace this algorithm with the input 5.

    i total OUTPUT
    1 1
    2 3
    3 6
    4 10
    5 15 15

    The trace shows the algorithm adds up 1 to n. With input 5 the output is 15.

    Worked example. Trace this algorithm and give the output.

    DIV gives only the whole-number part of a division. Take one row per pass: x becomes 10 (count 1), then 5 (count 2), then 2 (count 3), then 1 (count 4). Now x > 1 is false, so the loop stops and the output is 4. Two habits protect these marks: test the condition before each pass rather than after, and write a new row for every pass - trying to hold the values in your head is what makes traces go wrong.

    日本語

    A trace table 追踪表 records the value of each variable as an algorithm runs, step by step. It helps you:

    A trace table with columns count, total, output
    A trace table records each variable's value as the program runs
    • check that an algorithm works correctly;
    • work out what an algorithm does by following it with given data.

    Example: trace this algorithm with the input 5.

    INPUT N
    Total ← 0
    FOR I ← 1 TO N
        Total ← Total + I
    NEXT I
    OUTPUT Total
    
    i total OUTPUT
    1 1
    2 3
    3 6
    4 10
    5 15 15

    The trace shows the algorithm adds up 1 to n. With input 5 the output is 15.

    Worked example. Trace this algorithm and give the output.

    X ← 20
    Count ← 0
    WHILE X > 1
        X ← DIV(X, 2)
        Count ← Count + 1
    ENDWHILE
    OUTPUT Count
    

    DIV gives only the whole-number part of a division. Take one row per pass: x becomes 10 (count 1), then 5 (count 2), then 2 (count 3), then 1 (count 4). Now x > 1 is false, so the loop stops and the output is 4. Two habits protect these marks: test the condition before each pass rather than after, and write a new row for every pass - trying to hold the values in your head is what makes traces go wrong.

    Explore · ⁨探索⁩

    A trace table · ⁨トレース表⁩

    Step through the loop and fill in the trace table, one row per pass. · ⁨ループをステップごとに実行し、各反復に対して1行ずつ トレース表 を埋めてください。⁩

    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    trace table/treɪs ˈteɪbl/ トレーステーブル
    7.6

    Test data

    English

    Test data is data you use to test a program. There are four types you must know.

    Type Meaning Example (age 0–120 allowed)
    normal 正常数据 sensible data that should be accepted 25
    abnormal 异常数据 wrong data that should be rejected -4 or "cat"
    extreme 极端数据 the largest and smallest values still allowed 0 and 120
    boundary 边界数据 the values on each side of a limit (one allowed, one not) 120 and 121
    日本語

    Test data is data you use to test a program. There are four types you must know.

    Type Meaning Example (age 0–120 allowed)
    normal 正常数据 sensible data that should be accepted 25
    abnormal 异常数据 wrong data that should be rejected -4 or "cat"
    extreme 极端数据 the largest and smallest values still allowed 0 and 120
    boundary 边界数据 the values on each side of a limit (one allowed, one not) 120 and 121
    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    normal/ˈnɔːml/ 法線
    abnormal/əbˈnɔːml/ 異常な
    extreme/ekˈstriːm/ 極端な、 extreme
    boundary/ˈbaʊndəri/ 境界線
    7.7

    Standard methods of solution

    English

    You must know these common algorithms.

    Linear search

    A linear search 线性查找 checks each item in a list, one by one, until it finds the value it wants or reaches the end.

    Bubble sort

    A bubble sort 冒泡排序 puts a list in order. It compares each pair of side-by-side items and swaps them if they are in the wrong order. It repeats this until no more swaps are needed.

    Totalling and counting

    • totalling 求和 — keep adding values to a running total (Total ← Total + Value).
    • counting 计数 — add 1 to a counter each time something happens (Count ← Count + 1).

    Maximum, minimum and average

    • to find the maximum 最大值: keep the largest value seen so far.
    • to find the minimum 最小值: keep the smallest value seen so far.
    • to find the average 平均值: divide the total by how many values there are.
    日本語

    You must know these common algorithms.

    Linear search

    A linear search 线性查找 checks each item in a list, one by one, until it finds the value it wants or reaches the end.

    Found ← FALSE
    FOR I ← 0 TO 9
        IF List[I] = SearchValue
          THEN
            Found ← TRUE
        ENDIF
    NEXT I
    OUTPUT Found
    
    A list of eight numbers being scanned left to right, searching for 5; the first four do not match and the fifth is found
    Linear search checks each item in turn from the start until it finds the value

    Bubble sort

    A bubble sort 冒泡排序 puts a list in order. It compares each pair of side-by-side items and swaps them if they are in the wrong order. It repeats this until no more swaps are needed.

    FOR I ← 0 TO 8
        IF List[I] > List[I + 1]
          THEN
            Temp ← List[I]
            List[I] ← List[I + 1]
            List[I + 1] ← Temp
        ENDIF
    NEXT I
    
    A list where the first pair 5 and 2 is out of order, shown swapping to 2 and 5, with a note to repeat for each pair
    Bubble sort compares each side-by-side pair and swaps them if they are out of order, repeating until sorted

    Totalling and counting

    • totalling 求和 — keep adding values to a running total (Total ← Total + Value).
    • counting 计数 — add 1 to a counter each time something happens (Count ← Count + 1).

    Maximum, minimum and average

    • to find the maximum 最大值: keep the largest value seen so far.
    • to find the minimum 最小值: keep the smallest value seen so far.
    • to find the average 平均值: divide the total by how many values there are.
    Total ← 0
    FOR I ← 0 TO 9
        Total ← Total + List[I]
    NEXT I
    Average ← Total / 10
    OUTPUT Average
    
    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    linear search/ˈlɪnɪə sɜːtʃ/ 線形検索
    bubble sort/ˈbʌbl sɔːt/ バブルソート
    totalling/ˈtəʊtəlɪŋ/ 合計
    counting/ˈkaʊntɪŋ/ 数えること
    maximum/ˈmæksɪməm/ 最大
    minimum/ˈmɪnɪməm/ 最小値
    average/ˈævrɪdʒ/ 中点である
    7.8

    Exam tips

    • Learn the four life-cycle stages: analysis → design → coding → testing. Abstraction keeps only the important details; decomposition breaks a problem into smaller parts.
    • Validation checks data is sensible (range, length, type, presence, format checks); verification checks it was copied correctly (a visual check or double entry).
    • Learn the four test-data types: normal (accepted), abnormal (rejected), extreme (the largest/smallest still allowed), boundary (the values either side of a limit).
    • To work out what an algorithm does, fill in a trace table — write down every variable's value at each step.
    • Know the standard algorithms: linear search (check each item in turn) and bubble sort (swap side-by-side pairs until no swaps are needed).
  • 8

    Programming · ⁨プログラミング⁩

    Watch lesson · ⁨レッスンを視聴⁩
    8.1

    Variables and constants

    Syllabus · ⁨シラバス⁩
    English
    Candidates should be able to: Notes and guidance
    1 Declare and use variables and constants
    2 Understand and use basic data types • Including: – integer – real – char – string – Boolean
    3 Understand and use input and output
    4 (a) Understand and use the concept of sequence
    (b) Understand and use the concept of selection • Including: – IF statements – CASE statements
    (c) Understand and use the concept of iteration • Including: – count-controlled loops – pre-condition loops – post-condition loops
    (d) Understand and use the concepts of totalling and counting
    (e) Understand and use the concept of string handling • Including: – length – substring – upper – lower • The first character of the string can be position zero or one
    (f) Understand and use arithmetic, relational and logical operators • Arithmetic, limited to: – + – – – / – * – ^ (raised to power of) – MOD – DIV • Relational, limited to: – = – < – <= – > – >= – <> (not equal to) • Logical, limited to: – AND – OR – NOT
    5 Understand and use nested statements • Including nested selection and iteration • Candidates will not be required to write more than three levels of nested statements
    6 (a) Understand what is meant by procedures, functions and parameters (b) Define and use procedures and functions, with or without parameters (c) Understand and use local and global variables • Procedures and functions may have up to three parameters
    7 Understand and use library routines • Including: – MOD – DIV – ROUND – RANDOM
    8 Understand how to create a maintainable program • Including appropriate use of: – meaningful identifiers – the commenting feature provided by the programming language – procedures and functions – relevant and appropriate commenting of syntax • Use meaningful identifiers for: – variables – constants – arrays – procedures and functions
    日本語
    受験者は以下的能力を備えているべきである: メモおよびガイドライン
    1 変数と定数を宣言して使用する
    2 基本的なデータ型を理解して使用する • 以下を含む: – 整数 – 実数 – char – string – Boolean
    3 入力と出力を理解して使用する
    4 (a) シーケンスの概念を理解して使用する
    (b) 選択の概念を理解して使用する • 以下を含む: – IF文 – CASE文
    (c) 反復の概念を理解して使用する • 以下を含む: – カウント制御ループ – 事前条件ループ – 事後条件ループ
    (d) 総和計算とカウントの概念を理解して使用する
    (e) 文字列処理の概念を理解して使用する • 以下を含む: – length – substring – upper – lower • 文字列の最初の文字は位置0または1可以是
    (f) 算術演算子、関係演算子、論理演算子を理解して使用する • 算術演算子(以下に限定): – + – – – / – * – ^(べき乗) – MOD – DIV • 関係演算子(以下に限定): – = – < – <= – > – >= – <>(等しくない) • 論理演算子(以下に限定): – AND – OR – NOT
    5 ネスト文を理解して使用する • ネスト選択とネスト反復を含む • 受験者は3層を超えるネスト文を記述する必要はない
    6 (a) 手続(procedures)、関数(functions)、パラメータの意味を理解する (b) パラメータの有無に関わらず、手続と関数を定義して使用する (c) ローカル変数とグローバル変数の概念を理解して使用する • 手続と関数は最大3つのパラメータを持つことができる
    7 ライブラリ関数を理解して使用できる • 以下を含む:MOD – DIV – ROUND – RANDOM
    8 維持可能なプログラムの作成方法を理解する • 適切な以下の使用: – 意味のある識別子 – プログラミング言語が提供するコメント機能 – プロシージャと関数 – 構文に対する適切で意味のあるコメント • 以下のために意味のある識別子を使用する: – 変数 – 定数 – 配列 – プロシージャと関数

    Source: Cambridge International syllabus · ⁨出典: Cambridge International シラバス⁩

    English

    A variable 变量 is a named store that holds a value which can change while the program runs. A constant 常量 is a named store whose value is fixed and does not change.

    You should declare 声明 them (say their name and type) before use:

    Use a constant for a value that never changes (like Pi), so it is set in one place and is easy to read.

    日本語

    A variable 变量 is a named store that holds a value which can change while the program runs. A constant 常量 is a named store whose value is fixed and does not change.

    A variable named age holding the value 16
    A variable is a named store whose value can change
    Lines of program code on a screen
    Variables and constants are named stores for values, set in the program's code

    You should declare 声明 them (say their name and type) before use:

    DECLARE Score : INTEGER
    DECLARE Name : STRING
    CONSTANT Pi ← 3.142
    
    Two RAM memory modules
    While a program runs, its variables are held in the computer's memory (RAM)

    Use a constant for a value that never changes (like Pi), so it is set in one place and is easy to read.

    Explore · ⁨探索⁩

    Variables and assignment

    Step through the lines and watch each variable take its new value.

    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    variable/ˈveərɪəbl/ 変数
    constant/ˈkɒnstənt/ 一定である
    declare/dɪˈkleə/ 宣言
    8.1

    Data types

    English

    A data type 数据类型 says what kind of value a variable holds. You must know five basic types.

    Type Holds Example
    integer 整数 a whole number 42, -7
    real 实数 a number with a decimal point 3.14, -0.5
    char 字符 a single character 'A', '?'
    string 字符串 a sequence of characters "Hello"
    Boolean 布尔值 one of two values TRUE or FALSE
    日本語

    A data type 数据类型 says what kind of value a variable holds. You must know five basic types.

    Data types: integer (7), real (3.5), char ('A'), string ("hello"), boolean (true/false)
    The basic data types: integer, real, char, string and boolean
    Type Holds Example
    integer 整数 a whole number 42, -7
    real 实数 a number with a decimal point 3.14, -0.5
    char 字符 a single character 'A', '?'
    string 字符串 a sequence of characters "Hello"
    Boolean 布尔值 one of two values TRUE or FALSE
    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    data type/ˈdeɪtə taɪp/ データ型
    integer/ˈɪntɪdʒə/ 整数
    real/rɪəl/ 実数(REAL)
    char/tʃɑː/ char
    string/strɪŋ/ 文字列
    Boolean/ˈbuːlɪən/ Boolean
    8.1

    Input and output

    English

    Input 输入 reads a value from the user. Output 输出 shows a value on the screen.

    日本語

    Input 输入 reads a value from the user. Output 输出 shows a value on the screen.

    OUTPUT "What is your name?"
    INPUT Name
    OUTPUT "Hello ", Name
    
    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    input/ˈɪnpʊt/ 入力
    output/ˈaʊtpʊt/ 出力
    8.1

    The three basic structures

    English

    Every program is built from three control structures.

    Sequence

    Sequence 顺序 means the steps run one after another, in order, from top to bottom.

    Selection

    Selection 选择 chooses which steps to run, based on a condition. Use an IF statement, or a CASE statement when there are many choices.

    Iteration

    Iteration 迭代 (a loop 循环) repeats steps. There are three kinds.

    A count-controlled loop 计数循环 repeats a fixed number of times:

    A pre-condition loop 前测循环 checks the condition before each repeat, so it may run zero times:

    A post-condition loop 后测循环 checks the condition after each repeat, so it always runs at least once:

    日本語

    Every program is built from three control structures.

    Three small flowcharts: sequence (boxes in a line), selection (a test branching two ways), and iteration (a test with a body that loops back)
    The three control structures: sequence runs steps in order, selection chooses a branch, iteration repeats a body

    Sequence

    Sequence 顺序 means the steps run one after another, in order, from top to bottom.

    INPUT Length
    INPUT Width
    Area ← Length * Width
    OUTPUT Area
    

    Selection

    Selection 选择 chooses which steps to run, based on a condition. Use an IF statement, or a CASE statement when there are many choices.

    IF Score >= 50
      THEN
        OUTPUT "Pass"
      ELSE
        OUTPUT "Fail"
    ENDIF
    
    CASE OF Grade
        'A' : OUTPUT "Excellent"
        'B' : OUTPUT "Good"
        OTHERWISE OUTPUT "Keep trying"
    ENDCASE
    

    Iteration

    Iteration 迭代 (a loop 循环) repeats steps. There are three kinds.

    A count-controlled loop 计数循环 repeats a fixed number of times:

    FOR I ← 1 TO 5
        OUTPUT "Hello"
    NEXT I
    

    A pre-condition loop 前测循环 checks the condition before each repeat, so it may run zero times:

    WHILE Answer <> "stop" DO
        INPUT Answer
    ENDWHILE
    

    A post-condition loop 后测循环 checks the condition after each repeat, so it always runs at least once:

    REPEAT
        INPUT Password
    UNTIL Password = "secret"
    
    Two loop flowcharts: WHILE tests the condition before the body; REPEAT runs the body first and tests after
    A pre-condition (WHILE) loop tests before the body, so it may run zero times; a post-condition (REPEAT) loop tests after, so it runs at least once
    Explore · ⁨探索⁩

    How an IF … ELSE IF ladder decides

    The conditions are tested top to bottom; the FIRST one that is true runs and the rest are skipped. Slide the score and watch which branch lights up.

    Explore · ⁨探索⁩

    Selection

    Change the value and watch which branch runs — selection in action.

    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    sequence/ˈsiːkwəns/ 順序 (シーケンス)
    selection/sɪˈlekʃn/ 選択
    iteration/ˌɪtəˈreɪʃn/ 反復処理
    loop/luːp/ ループ
    count-controlled loop/kaʊnt kənˈtrəʊld luːp/ カウント制御ループ
    pre-condition loop/priː kənˈdɪʃn luːp/ 前条件ループ
    post-condition loop/pəʊst kənˈdɪʃn luːp/ 後条件ループ
    8.1

    Totalling and counting

    English
    • totalling 求和 — keep adding values to a running total: Total ← Total + Value.
    • counting 计数 — add 1 to a counter each time: Count ← Count + 1.

    Worked example. A program must read 5 marks, then output the total and the average.

    Two lines carry the marks. Total ← 0 must sit before the loop: put it inside and the total resets on every pass, so the program outputs only the last mark. And Average ← Total / 5 must sit after the loop, because the total is not complete until every mark has been added. Initialise before, calculate after - that ordering is what the question is really testing.

    日本語
    • totalling 求和 — keep adding values to a running total: Total ← Total + Value.
    • counting 计数 — add 1 to a counter each time: Count ← Count + 1.
    count = count + 1 counts up by 1; total = total + value adds to a running total
    A counter counts up by 1; a total builds a running sum
    A trace table following a loop over the values 4, 7 and 5: total goes 0, 4, 11, 16 while count goes 0, 1, 2, 3
    A trace table follows a totalling and counting loop pass by pass
    Total ← 0
    FOR I ← 1 TO 10
        INPUT Mark
        Total ← Total + Mark
    NEXT I
    OUTPUT Total
    

    Worked example. A program must read 5 marks, then output the total and the average.

    Total ← 0
    FOR I ← 1 TO 5
        INPUT Mark
        Total ← Total + Mark
    NEXT I
    Average ← Total / 5
    OUTPUT Total, Average
    

    Two lines carry the marks. Total ← 0 must sit before the loop: put it inside and the total resets on every pass, so the program outputs only the last mark. And Average ← Total / 5 must sit after the loop, because the total is not complete until every mark has been added. Initialise before, calculate after - that ordering is what the question is really testing.

    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    totalling/ˈtəʊtəlɪŋ/ 合計
    counting/ˈkaʊntɪŋ/ 数えること
    8.1

    Operators

    English

    Arithmetic operators

    Operator Meaning
    + - * / add, subtract, multiply, divide
    ^ raised to the power of
    MOD the remainder 余数 after division
    DIV the whole-number part of a division

    For example, 17 MOD 5 is 2, and 17 DIV 5 is 3.

    Relational operators

    These compare two values and give a Boolean result: =, <, <=, >, >=, and <> (not equal to).

    Logical operators

    These join conditions: AND (both must be true), OR (at least one must be true), NOT (reverses true/false).

    日本語

    Arithmetic operators

    Operator Meaning
    + - * / add, subtract, multiply, divide
    ^ raised to the power of
    MOD the remainder 余数 after division
    DIV the whole-number part of a division

    For example, 17 MOD 5 is 2, and 17 DIV 5 is 3.

    Relational operators

    These compare two values and give a Boolean result: =, <, <=, >, >=, and <> (not equal to).

    Logical operators

    These join conditions: AND (both must be true), OR (at least one must be true), NOT (reverses true/false).

    Three families of operators: arithmetic operators like plus and times give a number, relational operators like less-than compare and give true or false, logical operators AND OR NOT join conditions
    The three families of operators: arithmetic, relational and logical
    IF Age >= 13 AND Age <= 19
      THEN
        OUTPUT "Teenager"
    ENDIF
    
    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    remainder/rɪˈmeɪndə/ 余り
    8.1

    String handling

    English

    A string is made of characters. Useful operations:

    • length 长度 — the number of characters in the string;
    • substring 子串 — a smaller part taken from the string;
    • upper case 大写 — change letters to capitals;
    • lower case 小写 — change letters to small letters.

    (The first character may be counted as position 0 or position 1, depending on the language.)

    日本語

    A string is made of characters. Useful operations:

    • length 长度 — the number of characters in the string;
    • substring 子串 — a smaller part taken from the string;
    • upper case 大写 — change letters to capitals;
    • lower case 小写 — change letters to small letters.
    name ← "Computer"
    OUTPUT LENGTH(name)          // 8
    OUTPUT SUBSTRING(name, 1, 4) // "Comp"
    OUTPUT UCASE(name)           // "COMPUTER"
    OUTPUT LCASE(name)           // "computer"
    

    (The first character may be counted as position 0 or position 1, depending on the language.)

    Explore · ⁨探索⁩

    SUBSTRING: take part of a string

    The first character is at position 1. SUBSTRING(Word, Start, Length) takes Length characters beginning at Start — drag the two handles and read the call it builds.

    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    substring/ˈsʌbstrɪŋ/ 部分文字列(サブストリング)
    upper case/ˈʌpə keɪs/ 大文字
    lower case/ˈləʊə keɪs/ 小文字
    length/leŋθ/ 長さ
    8.1

    Nested statements

    English

    A nested statement 嵌套语句 is one control structure placed inside another. You can nest selection and iteration.

    You will not have to write more than three levels of nesting.

    日本語

    A nested statement 嵌套语句 is one control structure placed inside another. You can nest selection and iteration.

    FOR I ← 1 TO 3
        IF MOD(I, 2) = 0
          THEN
            OUTPUT I, " is even"
          ELSE
            OUTPUT I, " is odd"
        ENDIF
    NEXT I
    

    You will not have to write more than three levels of nesting.

    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    nested statement/ˈnestɪd ˈsteɪtmənt/ ネスト文
    8.1

    Procedures and functions

    English

    To avoid repeating code, you can break a program into named blocks.

    • A procedure 过程 is a named block of code that does a task. You run it with CALL.
    • A function 函数 is like a procedure, but it returns a value back to where it was called.

    A parameter 参数 is a value passed into a procedure or function (up to three parameters).

    Local and global variables

    • A local variable 局部变量 is declared inside a procedure or function. It can only be used there.
    • A global variable 全局变量 is declared in the main program. It can be used anywhere.

    Local variables are safer, because they cannot be changed by mistake from another part of the program.

    日本語

    To avoid repeating code, you can break a program into named blocks.

    • A procedure 过程 is a named block of code that does a task. You run it with CALL.
    • A function 函数 is like a procedure, but it returns a value back to where it was called.

    A parameter 参数 is a value passed into a procedure or function (up to three parameters).

    PROCEDURE Greet(PersonName : STRING)
        OUTPUT "Hello ", PersonName
    ENDPROCEDURE
    
    CALL Greet("Sam")
    
    FUNCTION Square(N : INTEGER) RETURNS INTEGER
        RETURN N * N
    ENDFUNCTION
    
    Answer ← Square(5)   // answer is 25
    

    Local and global variables

    • A local variable 局部变量 is declared inside a procedure or function. It can only be used there.
    • A global variable 全局变量 is declared in the main program. It can be used anywhere.

    Local variables are safer, because they cannot be changed by mistake from another part of the program.

    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    procedure/prəˈsiːdʒə/ 手続
    function/ˈfʌŋkʃn/ 関数
    parameter/pəˈræmɪtə/ パラメータ
    local variable/ˈləʊkl ˈveərɪəbl/ ローカル変数
    global variable/ˈɡləʊbl ˈveərɪəbl/ グローバル変数
    8.1

    Library routines

    English

    A library routine 库程序 is a ready-made piece of code you can use. You must know these:

    Routine What it does
    MOD gives the remainder of a division
    DIV gives the whole-number part of a division
    ROUND rounds a real number to a number of decimal places
    RANDOM gives a random number
    日本語

    A library routine 库程序 is a ready-made piece of code you can use. You must know these:

    Routine What it does
    MOD gives the remainder of a division
    DIV gives the whole-number part of a division
    ROUND rounds a real number to a number of decimal places
    RANDOM gives a random number
    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    library routine/ˈlaɪbrəri ruːˈtiːn/ ライブラ routines
    8.1

    Writing a maintainable program

    English

    A maintainable 可维护的 program is easy for other people to read and change later. To make one:

    • use meaningful identifiers 有意义的标识符 — clear names for variables, constants, arrays, procedures and functions (totalScore, not x);
    • add comments 注释 to explain what parts of the code do;
    • use procedures and functions to split the work into small blocks.
    日本語

    A maintainable 可维护的 program is easy for other people to read and change later. To make one:

    • use meaningful identifiers 有意义的标识符 — clear names for variables, constants, arrays, procedures and functions (totalScore, not x);
    • add comments 注释 to explain what parts of the code do;
    • use procedures and functions to split the work into small blocks.
    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    maintainable/meɪnˈteɪnəbl/ 保守可能
    meaningful identifiers/ˈmiːnɪŋfl aɪˈdentɪfaɪəz/ 意味のある識別子
    comments/ˈkɒments/ コメント
    8.2

    Arrays

    Syllabus · ⁨シラバス⁩
    English
    Candidates should be able to: Notes and guidance
    1 Declare and use one-dimensional (1D) and two-dimensional (2D) arrays
    2 Understand the use of arrays • Including the use of variables as indexes in arrays
    3 Write values into, and read values from, an array using iteration • The first index can be zero or one • Including nested iteration
    日本語
    受験者は以下的能力を備えているべきである: メモおよびガイドライン
    1 一次元 (1D) および 二次元 (2D) 配列を宣言して使用する
    2 配列の使用を理解する • 配列におけるインデックスとして変数を使用する場合を含む
    3 ループを用いて配列に値を書き込み、読み出す • 最初のインデックスは0または1可以是 • 重層ループを含む

    Source: Cambridge International syllabus · ⁨出典: Cambridge International シラバス⁩

    English

    An array 数组 is a single variable that holds many values of the same type, found by an index 索引 (a position number).

    One-dimensional arrays

    A one-dimensional (1D) array 一维数组 is like a single list.

    You can use a loop to fill or read an array:

    Two-dimensional arrays

    A two-dimensional (2D) array 二维数组 is like a table with rows and columns. It uses two indexes.

    You read a 2D array with a loop inside a loop (nested iteration).

    日本語

    An array 数组 is a single variable that holds many values of the same type, found by an index 索引 (a position number).

    One-dimensional arrays

    A one-dimensional (1D) array 一维数组 is like a single list.

    DECLARE Scores : ARRAY[1:5] OF INTEGER
    Scores[1] ← 90
    Scores[2] ← 75
    OUTPUT Scores[1]
    
    Five boxes in a row labelled with index 1 to 5, holding values, with the value at index 2 highlighted as 75
    A 1D array holds many values in one variable; each is found by its index

    You can use a loop to fill or read an array:

    FOR I ← 1 TO 5
        INPUT Scores[I]
    NEXT I
    

    Two-dimensional arrays

    A two-dimensional (2D) array 二维数组 is like a table with rows and columns. It uses two indexes.

    DECLARE Grid : ARRAY[1:3, 1:3] OF INTEGER
    Grid[1, 1] ← 5
    Grid[2, 3] ← 8
    
    A 3 by 3 grid with numbered rows and columns; the cell at row 2, column 3 is highlighted and labelled as grid row 2 column 3
    A 2D array is a table; each value is found by two indexes, [row, column]

    You read a 2D array with a loop inside a loop (nested iteration).

    Explore · ⁨探索⁩

    Arrays

    Pick a row and a column to read one cell. Cambridge arrays count from 1, and a 2-D element is written with ONE pair of brackets — Grid[2, 3].

    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    array/əˈreɪ/ 配列
    index/ˈɪndeks/ インデックス
    one-dimensional (1D) array/wʌn daɪˈmenʃənl əˈreɪ/ 一次元配列(1D array)
    two-dimensional (2D) array/tuː daɪˈmenʃənl əˈreɪ/ 二次元配列(2D array)
    8.3

    File handling

    Syllabus · ⁨シラバス⁩
    English
    Candidates should be able to: Notes and guidance
    1 Understand the purpose of storing data in a file to be used by a program
    2 Open, close and use a file for reading and writing • Including: – read and write single items of data – read and write a line of text
    日本語
    受験者は以下的能力を備えているべきである: メモおよびガイドライン
    1 プログラムによって使用されるためにデータをファイルに保存する目的を理解する
    2 ファイルを開き、閉じ、読み出しおよび書き込みに使用する • 以下を含む: – データ単体を読み書きする – テキスト行を読み書きする

    Source: Cambridge International syllabus · ⁨出典: Cambridge International シラバス⁩

    English

    A program can store data in a file 文件 so it is kept after the program stops. You must open the file, use it, then close it.

    You can read and write single items of data or a whole line of text. Always close a file when you have finished with it.

    日本語

    A program can store data in a file 文件 so it is kept after the program stops. You must open the file, use it, then close it.

    OPENFILE "data.txt" FOR WRITE
    WRITEFILE "data.txt", "Hello"
    CLOSEFILE "data.txt"
    
    OPENFILE "data.txt" FOR READ
    READFILE "data.txt", Line
    CLOSEFILE "data.txt"
    

    You can read and write single items of data or a whole line of text. Always close a file when you have finished with it.

    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    file/faɪl/ file
    8.3

    Exam tips

    • A variable can change while the program runs; a constant is fixed. Learn the five data types: integer, real, char, string, Boolean.
    • Every program is built from three structures: sequence, selection (IF / CASE), and iteration (loops).
    • A WHILE loop tests before the body, so it may run zero times; a REPEAT … UNTIL loop tests after, so it always runs at least once.
    • MOD gives the remainder and DIV the whole-number part of a division: 17 MOD 5 is 2, 17 DIV 5 is 3.
    • A function returns a value; a procedure does not. A local variable works only inside its block; a global one works anywhere.
  • 9

    Databases · ⁨データベース⁩

    Watch lesson · ⁨レッスンを視聴⁩
    Syllabus · ⁨シラバス⁩
    English
    Candidates should be able to: Notes and guidance
    1 Define a single-table database from given data storage requirements • Including: – fields – records – validation
    2 Suggest suitable basic data types • Including: – text/alphanumeric – character – Boolean – integer – real – date/time
    3 Understand the purpose of a primary key and identify a suitable primary key for a given database table
    4 Read, understand and complete structured query language (SQL) scripts to query data stored in a single database table • Limited to: – SELECT – FROM – WHERE – ORDER BY DESCENDING – ORDER BY ASCENDING – SUM – COUNT – AND – OR • Identifying the output given by an SQL statement that will query the given contents of a database table
    日本語
    受験者は以下的能力を備えているべきである: メモおよびガイドライン
    1 与えられたデータ保存要件から単一テーブル・データベースを定義する • 以下を含む: – フィールド – レコード – 検証
    2 適切な基本データ型を提案する • 以下を含む: – テキスト/アルファベトリック – キャラクター – ブール – 整数 – 実数 – 日付/時刻
    3 プライマリ・キーの目的を理解し、与えられたデータベース・テーブルに対して適切なプライマリ・キーを特定する
    4 構造化クエリ言語 (SQL) スクリプトを読み、理解し、単一のデータベース・テーブルに格納されたデータを照会するために完了させる • 制限: – SELECT – FROM – WHERE – ORDER BY DESCENDING – ORDER BY ASCENDING – SUM – COUNT – AND – OR • SQLステートメントによる出力を特定すること(そのステートメントが与えられたデータベース・テーブルの内容を照会する場合)

    Source: Cambridge International syllabus · ⁨出典: Cambridge International シラバス⁩

    9.1

    What is a database? · ⁨データベースとは何か?⁩

    English

    A database 数据库 is an organised store of data, kept so that it is easy to search, sort and update. At IGCSE you work with a single-table database 单表数据库 — all the data is held in one table.

    日本語

    データベースは、検索・ソート・更新が容易なよう組織的に管理されたデータの保管場所です。IGCSEでは単一テーブルデータベース来处理し、すべてのデータは1つのテーブルに格納されます。

    図書館のカードカタログにあるラベル付きの引き出しの列
    図書館のカードカタログは紙上のデータベースです。インデックスによって検索・ソート可能なレコードがあります
    データセンター内のサーバーの列
    大型の現代のデータベースはデータセンターのサーバーに格納されています
    9.2

    Records and fields · ⁨レコードとフィールド⁩

    English

    A database table is made of records and fields.

    • A record 记录 is one row in the table — all the data about one thing (for example one student).
    • A field 字段 is one column in the table — one piece of data that every record has (for example "First name").
    StudentID FirstName DateOfBirth FormClass FeesPaid
    1 Amy 14/03/2009 10A TRUE
    2 Ben 02/11/2008 10B FALSE

    Here each row is a record, and each column is a field.

    日本語

    データベーステーブルはレコードとフィールドで構成されます。

    • レコードは表の1行であり、ある対象に関するすべてのデータを含みます(例:1人の生徒)。
    • フィールドは表の1列であり、すべてのレコードに存在する1つのデータ項目です(例:「名前」)。
    StudentID FirstName DateOfBirth FormClass FeesPaid
    1 Amy 14/03/2009 10A TRUE
    2 Ben 02/11/2008 10B FALSE

    ここで、各行はレコードであり、各列はフィールドです。

    Studentテーブル。各行はレコード、各列はフィールドとしてラベル付けされており、StudentID列が主キーとして強調表示されています
    各行はレコード、各列はフィールドであり、主キー(StudentID)は各レコードごとに一意です
    9.3

    Data types for fields · ⁨フィールドのデータ型⁩

    English

    Each field stores one data type 数据类型. You choose the type that best fits the data.

    Data type Used for Example
    text/alphanumeric 文本 letters, digits and symbols "10A", "Amy"
    character 字符 a single character 'M'
    Boolean 布尔值 one of two values TRUE / FALSE
    integer 整数 a whole number 42
    real 实数 a number with a decimal point 3.5
    date/time 日期时间 a date or a time 14/03/2009
    日本語

    各フィールドは1つのデータ型を格納します。データに最も適した型を選択します。

    フィールドタイプ:テキスト(氏名)、数値(年齢)、日付/時間(誕生日)、ブール(はい/いいえ)
    フィールドタイプ:テキスト、数値、日付/時間、ブール
    Data type Used for Example
    text/alphanumeric 文字、数字、記号 "10A", "Amy"
    文字列 単一の文字 'M'
    Boolean 2つの値のいずれか TRUE / FALSE
    integer 整数 42
    real 小数点を含む数 3.5
    date/time 日付または時刻 14/03/2009
    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    database/ˈdeɪtəbeɪs/ データベース
    single-table database/ˈsɪŋɡl ˈteɪbl ˈdeɪtəbeɪs/ 単一テーブルデータベース
    record/ˈrekɔːd/ record
    field/fiːld/ 場として扱う
    data type/ˈdeɪtə taɪp/ データ型
    text/alphanumeric/tekst ˌælfənjuːˈmerɪk/ テキスト/アルファベティック
    character/ˈkærɪktə/ 文字
    Boolean/ˈbuːlɪən/ Boolean
    integer/ˈɪntɪdʒə/ 整数
    real/rɪəl/ 実数(REAL)
    date/time/deɪt taɪm/ 日付/時刻
    9.4

    The primary key · ⁨主キー⁩

    English

    A primary key 主键 is a field that holds a unique 唯一的 value for every record. No two records can have the same primary key, so it lets you pick out exactly one record.

    In the table above, StudentID is a good primary key because every student has a different number. A field like FormClass would be a bad primary key, because many students share the same class.

    日本語

    主キー(primary key) は、各レコードに対して**一意(unique)**の値を保持するフィールドです。2つのレコードが同じ主キーを持つことはできないため、特定のレコードを正確に識別できます。

    上記の表において、StudentID は良い主キーです。なぜなら全生徒に異なる番号があるからです。FormClass のようなフィールドは悪い主キーとなります。なぜなら、複数の生徒が同じクラスに所属する可能性があるからです。

    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    primary key/ˈpraɪməri kiː/ 主キー
    unique/juːˈniːk/ 一意
    9.5

    Validation in a database · ⁨データベースにおける検証⁩

    English

    When data is put into a database, validation 验证 checks make sure it is sensible — for example a range check on an age field, or a presence check so a field is not left empty. (You saw these checks in topic 7.)

    日本語

    データベースにデータを入力する際、**検証(validation)**により、データが妥当であることを確認します。例えば、年齢フィールドに対する範囲チェックや、フィールドが空にならないようにする存在チェックなどです。(これらのチェックはトピック7で確認しました。)

    年齢フィールドへの範囲チェック。16は受け入れ、200は拒否します
    範囲チェックは妥当な値を受け入れ、それ以外を拒否します。
    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    validation/ˌvælɪˈdeɪʃn/ 検証
    9.6

    Structured Query Language (SQL) · ⁨ストラクチャードクエリ言語 (SQL)⁩

    English

    Structured Query Language 结构化查询语言 (SQL) is a language used to query 查询 a database — to pick out the records you want. You must understand and complete SQL scripts.

    SELECT, FROM and WHERE

    • SELECT says which fields to show.
    • FROM says which table to use.
    • WHERE gives a condition 条件, so only matching records are shown.

    This shows the first name and class of every student who has paid the fees.

    Use * to select all fields:

    ORDER BY

    ORDER BY sorts the results. Use ASC for ascending 升序 (smallest first, A→Z) or DESC for descending 降序 (largest first, Z→A).

    AND and OR

    Join conditions with AND (both must be true) or OR (at least one must be true).

    SUM and COUNT

    • SUM adds up the values in a number field.
    • COUNT counts how many records match.

    This counts how many students have not paid. SUM works the same way but adds a number field instead of counting rows.

    Working out the output

    To find the output of an SQL script, read it in this order:

    1. FROM — which table;
    2. WHERE — keep only the records that match the condition;
    3. SELECT — show only the chosen fields;
    4. ORDER BY — put the results in order.

    Following these steps, you can write down exactly which rows and columns the query returns.

    Worked example. A Book table has the fields Title, Author, Price and InStock. Write a query showing the title and price of every book by Orwell that is in stock, cheapest first.

    Build it in the reading order: FROM names the table; WHERE keeps only the matching records, and because there are two conditions they need AND; SELECT shows only the two fields asked for; ORDER BY … ASC sorts them. Text values go in quotes, and only the fields the question asks for belong in SELECT - adding Author just because you filtered on it is the commonest way to lose a mark here.

    日本語

    ストラクチャードクエリ言語(Structured Query Language) (SQL)は、データベースを**照会(query)**するために使用される言語です。つまり、必要なレコードを抽出するためのものです。SQLスクリプトを理解し、実行できる必要があります。

    SELECT, FROM および WHERE

    • SELECT はどのフィールドを表示するかを指定します。
    • FROM はどのテーブルを使用するかを指定します。
    • WHERE は**条件(condition)**を与え、一致するレコードのみを表示します。
    SQLクエリ:SELECT name FROM students WHERE age > 15
    SELECTはフィールドを選択し、FROMはテーブル名を指定し、WHEREは条件を設定します。
    SELECT FirstName, FormClass
    FROM Student
    WHERE FeesPaid = TRUE;
    

    これは、授業料を納入した全生徒の氏名とクラスを表示します。

    * を使用してすべてのフィールドを選択します:

    SELECT *
    FROM Student
    WHERE FormClass = '10A';
    

    ORDER BY

    ORDER BY は結果をソートします。ASC を使用して昇順(最小値優先、A→Z)またはDESC を使用して降順(最大値優先、Z→A)にソートします。

    SELECT FirstName, DateOfBirth
    FROM Student
    ORDER BY DateOfBirth ASC;
    

    AND および OR

    条件をAND (AND: 両方が真である必要がある) または OR (OR: 少なくとも一方が真であればよい) で結合します。

    SELECT FirstName
    FROM Student
    WHERE FormClass = '10A' AND FeesPaid = FALSE;
    

    SUM と COUNT

    • SUM は数値フィールドの値を合計します。
    • COUNT は一致するレコードの数を数えます。
    SELECT COUNT(StudentID)
    FROM Student
    WHERE FeesPaid = FALSE;
    

    これは、未納の生徒の数を数えます。SUM も同様に動作しますが、行数を数える代わりに数値フィールドを加算します。

    出力の計算

    SQLスクリプトの出力を見つけるには、この順序で読み取ります:

    1. FROM — どのテーブルか;
    2. WHERE — 条件に一致するレコードのみを残す;
    3. SELECT — 選択したフィールドのみを表示;
    4. ORDER BY — 結果を並べ替える。
    4つの手順(順序通り):FROM(どのテーブルから)、WHERE(一致する行を保持)、SELECT(選択したフィールドを表示)、ORDER BY(結果を並べ替える)
    SQLクエリをこの順で読む:FROM(どのテーブル)、WHERE(どの行)、SELECT(どのフィールド)、ORDER BY(並べ替え)

    これらの手順に従うことで、クエリが返す正確な行と列を特定できます。

    ** worked example.** Book テーブルには、Title、Author、Price、InStock というフィールドがあります。Orwellによるすべての在庫のある本のタイトルと価格を示し、最安値を先に表示するクエリを作成してください。

    SELECT Title, Price
    FROM Book
    WHERE Author = 'Orwell' AND InStock = TRUE
    ORDER BY Price ASC;
    

    読み順に合わせて構築します:FROM はテーブル名を指定し;WHERE は一致するレコードのみを保持し、条件が2つあるため AND が必要です;SELECT は質問で求められた2つのフィールドのみを表示します;ORDER BY … ASC で並べ替えます。テキスト値は引用符で囲み、SELECT に含まれるのは質問で求められたフィールドのみです。単にフィルタリングに使用したというだけで Author を追加することは、ここで失点する最も一般的な方法です。

    Explore · ⁨探索⁩

    SELECT … WHERE

    Step through a query: WHERE filters rows, SELECT picks columns. · ⁨クエリを追跡する:WHERE句が行をフィルタリングし、SELECT句が列を選択します。⁩

    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    structured query language/ˈstrʌktʃəd ˈkwɪərɪ ˈlæŋɡwɪdʒ/ 構造化クエリ言語
    query/ˈkwɪərɪ/ 照会
    condition/kənˈdɪʃn/ 条件
    ascending/əˈsendɪŋ/ 昇順
    descending/dɪˈsendɪŋ/ 降順
    9.7

    Exam tips · ⁨試験対策⁩

    English
    • A record is a row (all the data about one thing); a field is a column (one item that every record has).
    • A primary key must be unique for every record, so it picks out exactly one record (StudentID, not FormClass).
    • Learn the SQL parts: SELECT (which fields), FROM (which table), WHERE (the condition), ORDER BY (sort, ASC or DESC).
    • Read a query in the order FROM → WHERE → SELECT → ORDER BY to work out its output.
    • COUNT counts the matching records; SUM adds up a number field.
    日本語
    • レコードとは行のこと(1つの対象に関するすべてのデータ);フィールドとはカラムのこと(各レコードが持つ1つの項目)。
    • プライマリキーは、各レコードに対して一意である必要があり、したがってちょうど1つのレコードを特定します(StudentIDであり、FormClassではありません)。
    • SQLの構成要素を学びます:SELECT (どのフィールド)、FROM (どのテーブル)、WHERE (条件)、ORDER BY (並べ替え、ASCまたはDESC)。
    • クエリの出力を理解するために、FROM → WHERE → SELECT → ORDER BY の順で読みます。
    • COUNT は一致するレコード数をカウントします;SUM は数値フィールドの合計を計算します。
  • 10

    Boolean logic · ⁨ブール論理⁩

    Watch lesson · ⁨レッスンを視聴⁩
    Syllabus · ⁨シラバス⁩
    English
    Candidates should be able to: Notes and guidance
    1 Identify and use the standard symbols for logic gates • See section 4 for logic gate symbols
    2 Define and understand the functions of logic gates • Including: – NOT – AND – OR – NAND – NOR – XOR (EOR) – the binary output produced from all the possible binary inputs • NOT is a single input gate • All other gates are limited to two inputs
    3 (a) Use logic gates to create given logic circuits from a: (i) problem statement (ii) logic expression (iii) truth table (b) Complete a truth table from a: (i) problem statement (ii) logic expression (iii) logic circuit • Circuits must be drawn for the statement given, without simplification • Logic circuits will be limited to a maximum of three inputs and one output • An example truth table with three inputs, for completion: A B C Output | 0 0 0 | 0 0 1 | 0 1 0 | 0 1 1 | 1 0 0 | 1 0 1 | 1 1 0 | 1 1 1
    (c) Write a logic expression from a: (i) problem statement (ii) logic circuit (iii) truth table
    日本語
    受験者は以下的能力を備えているべきである: メモおよびガイドライン
    1 論理ゲートの標準記号を特定して使用する • 論理ゲートの記号についてはセクション4を参照
    2 論理ゲートの定義と機能を理解する • 以下を含む:– NOT – AND – OR – NAND – NOR – XOR (EOR) – 可能なすべてのバイナリ入力から生成されるバイナリ出力 • NOTは単一入力のゲートである • 他のすべてのゲートは最大2つの入力に限定されている
    3 (a) 与えられた論理回路を以下のものから作成するために論理ゲートを使用する:(i) 問題の記述 (ii) 論理式 (iii) 真値表 (b) 以下のものから真値表を完成させる:(i) 問題の記述 (ii) 論理式 (iii) 論理回路 • 与えられた記述に対して簡略化せず回路を描くこと • 論理回路は最大3つの入力と1つの出力に限定される • 3つの入力を有する完成すべき真値表の例:A B C 出力 | 0 0 0 | 0 0 1 | 0 1 0 | 0 1 1 | 1 0 0 | 1 0 1 | 1 1 0 | 1 1 1
    (c) 以下のものから論理式を記述する:(i) 問題の記述 (ii) 論理回路 (iii) 真値表

    Source: Cambridge International syllabus · ⁨出典: Cambridge International シラバス⁩

    10.1

    What is Boolean logic?

    English

    Boolean logic 布尔逻辑 works with values that are either true or false. In electronics these are shown as 1 (true) and 0 (false). A logic gate 逻辑门 takes one or more of these inputs and gives one output, following a fixed rule.

    A truth table 真值表 lists every possible set of inputs and the output for each. You build it by writing out all the input combinations.

    日本語

    Boolean logic 布尔逻辑 works with values that are either true or false. In electronics these are shown as 1 (true) and 0 (false). A logic gate 逻辑门 takes one or more of these inputs and gives one output, following a fixed rule.

    A truth table 真值表 lists every possible set of inputs and the output for each. You build it by writing out all the input combinations.

    An electronic circuit built on a breadboard
    Logic gates are built from electronic circuits like this one, where each gate switches on 1s and 0s
    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    Boolean logic/ˈbuːlɪən ˈlɒdʒɪk/ ブール論理
    logic gate/ˈlɒdʒɪk ɡeɪt/ 論理ゲート
    truth table/truːθ ˈteɪbl/ 真偽表
    10.2

    The six logic gates

    English
    A logic circuit in action: the half adder

    You must know six gates. NOT has one input; all the others have two inputs (A and B).

    NOT gate

    The NOT gate 非门 reverses the input. Output is 1 when the input is 0.

    A Output
    0 1
    1 0

    AND gate

    The AND gate 与门 gives output 1 only when both inputs are 1.

    A B Output
    0 0 0
    0 1 0
    1 0 0
    1 1 1

    OR gate

    The OR gate 或门 gives output 1 when at least one input is 1.

    A B Output
    0 0 0
    0 1 1
    1 0 1
    1 1 1

    NAND gate

    The NAND gate 与非门 is AND followed by NOT. The output is the opposite of AND.

    A B Output
    0 0 1
    0 1 1
    1 0 1
    1 1 0

    NOR gate

    The NOR gate 或非门 is OR followed by NOT. The output is the opposite of OR.

    A B Output
    0 0 1
    0 1 0
    1 0 0
    1 1 0

    XOR gate

    The XOR gate 异或门 (exclusive OR) gives output 1 when the inputs are different.

    A B Output
    0 0 0
    0 1 1
    1 0 1
    1 1 0
    日本語
    A logic circuit in action: the half adder

    You must know six gates. NOT has one input; all the others have two inputs (A and B).

    The six logic gate symbols — NOT, AND, OR, NAND, NOR and XOR — each with labelled inputs and one output
    The six logic gates. A small circle on the output means the result is inverted (NOT, NAND, NOR)
    Three small black computer chips with rows of metal pins, each printed with a code
    A real logic chip: inside are logic gates like the ones on this page

    NOT gate

    The NOT gate 非门 reverses the input. Output is 1 when the input is 0.

    A Output
    0 1
    1 0

    AND gate

    The AND gate 与门 gives output 1 only when both inputs are 1.

    Truth table for AND: only 1 AND 1 gives 1
    AND outputs 1 only when both inputs are 1
    A B Output
    0 0 0
    0 1 0
    1 0 0
    1 1 1

    OR gate

    The OR gate 或门 gives output 1 when at least one input is 1.

    Truth table for OR: 0 OR 0 gives 0, the rest give 1
    OR outputs 1 when either input is 1
    A B Output
    0 0 0
    0 1 1
    1 0 1
    1 1 1

    NAND gate

    The NAND gate 与非门 is AND followed by NOT. The output is the opposite of AND.

    A B Output
    0 0 1
    0 1 1
    1 0 1
    1 1 0

    NOR gate

    The NOR gate 或非门 is OR followed by NOT. The output is the opposite of OR.

    A B Output
    0 0 1
    0 1 0
    1 0 0
    1 1 0

    XOR gate

    The XOR gate 异或门 (exclusive OR) gives output 1 when the inputs are different.

    A B Output
    0 0 0
    0 1 1
    1 0 1
    1 1 0
    Explore · ⁨探索⁩

    The logic gates · ⁨論理ゲート⁩

    Switch the inputs and pick a gate to see its output — AND, OR, NOT, NAND, NOR, XOR. · ⁨入力スイッチを切り替えてゲートを選択すると、その出力が表示されます——AND、OR、NOT、NAND、NOR、XOR。⁩

    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    NOT gate/nɒt ɡeɪt/ NOTゲート
    AND gate/ænd ɡeɪt/ ANDゲート
    OR gate/ɔː ɡeɪt/ ORゲート
    NAND gate/nænd ɡeɪt/ NANDゲート
    NOR gate/nɔː ɡeɪt/ NORゲート
    XOR gate/ˈeksɔː ɡeɪt/ 排他論理ゲート
    10.3

    Logic expressions

    English

    A logic expression 逻辑表达式 writes a circuit using letters and gate words. The usual way to write the gates:

    Gate In words
    NOT A NOT A
    A AND B A AND B
    A OR B A OR B

    For example, the expression (A AND B) OR (NOT C) means: do A AND B, do NOT C, then OR the two results together.

    日本語

    A logic expression 逻辑表达式 writes a circuit using letters and gate words. The usual way to write the gates:

    Gate In words
    NOT A NOT A
    A AND B A AND B
    A OR B A OR B

    For example, the expression (A AND B) OR (NOT C) means: do A AND B, do NOT C, then OR the two results together.

    The expression X equals A AND B OR NOT C drawn as a circuit: an AND gate takes A and B, a NOT gate takes C, and an OR gate combines the two into output X
    The expression X = (A AND B) OR (NOT C) drawn as a logic circuit
    Explore · ⁨探索⁩

    Truth tables · ⁨真値表⁩

    Build the truth table for AND, OR, XOR and NOT — the logic behind every expression. · ⁨AND、OR、XOR、NOTの真値表を作成します——すべての論理式の根底にある論理構造です。⁩

    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    logic expression/ˈlɒdʒɪk ekˈspreʃn/ 論理式
    10.4

    Logic circuits

    English

    A logic circuit 逻辑电路 joins gates together to carry out a task. The output of one gate can become the input of another. At IGCSE a circuit has up to three inputs and one output.

    You must be able to move between four forms:

    • a problem statement 问题陈述 (a description in words),
    • a logic expression,
    • a logic circuit,
    • a truth table.

    From a problem statement to a circuit

    Read the statement and pick out the conditions and the logic words (and, or, not). For example:

    An alarm (X) sounds when the door is open (A) AND the system is switched on (B).

    This is X = A AND B, so you draw one AND gate with inputs A and B.

    Completing a truth table from a circuit or expression

    To fill in a truth table:

    1. Write all the input combinations. For three inputs there are 8 rows (000 up to 111).
    2. Work out each gate's output in order, one column at a time.
    3. The last column is the final output.
    A B C A AND B (A AND B) OR C
    0 0 0 0 0
    0 0 1 0 1
    0 1 0 0 0
    0 1 1 0 1
    1 0 0 0 0
    1 0 1 0 1
    1 1 0 1 1
    1 1 1 1 1

    Adding a middle "working" column for each gate makes the final output easy to fill in. Always draw the circuit exactly as the statement says, without simplifying it.

    Worked example. Complete the truth table for X = (A AND B) OR (NOT C) for the row A = 1, B = 0, C = 0. Work outwards from the brackets, one gate at a time. First A AND B = 1 AND 0 = 0, because AND needs both inputs to be 1. Next NOT C = NOT 0 = 1. Finally OR the two results: 0 OR 1 = 1. So X = 1. Give each intermediate gate its own column rather than trying to do the whole expression in one step: with three inputs there are $2^3 = 8$ rows, and those intermediate columns are where the method marks live even if the final answer slips.

    日本語

    A logic circuit 逻辑电路 joins gates together to carry out a task. The output of one gate can become the input of another. At IGCSE a circuit has up to three inputs and one output.

    A logic circuit: an AND gate taking inputs A and B feeds one input of an OR gate whose other input is C, giving output X
    Building the circuit for X = (A AND B) OR C — the AND gate's output feeds the OR gate

    You must be able to move between four forms:

    • a problem statement 问题陈述 (a description in words),
    • a logic expression,
    • a logic circuit,
    • a truth table.

    From a problem statement to a circuit

    Read the statement and pick out the conditions and the logic words (and, or, not). For example:

    An alarm (X) sounds when the door is open (A) AND the system is switched on (B).

    This is X = A AND B, so you draw one AND gate with inputs A and B.

    Completing a truth table from a circuit or expression

    To fill in a truth table:

    1. Write all the input combinations. For three inputs there are 8 rows (000 up to 111).
    2. Work out each gate's output in order, one column at a time.
    3. The last column is the final output.
    Three inputs give two times two times two equals eight rows; the eight combinations are listed by counting up in binary from 000 to 111, with the last column flipping every row
    Three inputs give eight rows: every combination counted in binary
    A B C A AND B (A AND B) OR C
    0 0 0 0 0
    0 0 1 0 1
    0 1 0 0 0
    0 1 1 0 1
    1 0 0 0 0
    1 0 1 0 1
    1 1 0 1 1
    1 1 1 1 1

    Adding a middle "working" column for each gate makes the final output easy to fill in. Always draw the circuit exactly as the statement says, without simplifying it.

    Worked example. Complete the truth table for X = (A AND B) OR (NOT C) for the row A = 1, B = 0, C = 0. Work outwards from the brackets, one gate at a time. First A AND B = 1 AND 0 = 0, because AND needs both inputs to be 1. Next NOT C = NOT 0 = 1. Finally OR the two results: 0 OR 1 = 1. So X = 1. Give each intermediate gate its own column rather than trying to do the whole expression in one step: with three inputs there are $2^3 = 8$ rows, and those intermediate columns are where the method marks live even if the final answer slips.

    Vocabulary · ⁨語彙⁩ Train · ⁨練習する⁩
    English 日本語
    logic circuit/ˈlɒdʒɪk ˈsɜːkɪt/ 論理回路
    problem statement/ˈprɒbləm ˈsteɪtmənt/ 問題記述
    10.5

    Exam tips

    • Learn all six gates and their truth tables: NOT, AND, OR, NAND (NOT AND), NOR (NOT OR), XOR (output 1 when the inputs are different).
    • Build a truth table with all input rows (2 inputs → 4 rows, 3 inputs → 8), counting up in binary, and add a working column for each gate.
    • Turn a problem statement into a logic expression by picking out the AND / OR / NOT words, then draw it exactly as written — do not simplify it.
    • NAND and NOR give the opposite output to AND and OR; a small circle on a gate's output means the result is inverted.

Log in or create account · ⁨ログインまたはアカウント作成⁩

IGCSE, A-Level & AP