Skip to content · ⁨Bỏ qua nội dung⁩
Subjects · ⁨Môn học⁩

IGCSE Computer Science · ⁨Khoa học máy tính IGCSE⁩

Tips · ⁨Mẹo⁩

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 · ⁨Biểu diễn dữ liệu⁩

    Watch lesson · ⁨Xem bài học⁩
    1.1

    Why computers use binary · ⁨Tại sao máy tính dùng nhị phân⁩

    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 处理器).

    Tiếng Việt

    Máy tính chỉ hoạt động với hai trạng thái: bật và tắt. Bạn viết chúng là 1 và 0. Một hệ thống chỉ sử dụng hai chữ số được gọi là nhị phân (cơ số 2).

    Một trường hợp các chữ số nhị phân màu xanh, gồm 0 và 1
    Máy tính biểu diễn tất cả dữ liệu — số, văn bản, âm thanh và hình ảnh — dưới dạng chuỗi nhị phân gồm 0 và 1

    Mọi loại dữ liệu — số, văn bản, âm thanh và hình ảnh — đều phải được chuyển đổi sang nhị phân trước khi máy tính có thể sử dụng. Máy tính xử lý dữ liệu nhị phân này bằng các cổng logic, và lưu trữ nó trong các bộ nhớ tạm (những bộ nhớ nhỏ, nhanh bên trong bộ vi xử lý).

    Vòng bán dẫn silicon của một vi xử lý dưới kính hiển vi
    Vi xử lý chứa hàng triệu transistor siêu nhỏ, mỗi transistor đóng vai trò như một công tắc bật (1) hoặc tắt (0) — cơ sở vật lý của nhị phân
    Vocabulary · ⁨Từ vựng⁩ Train · ⁨Luyện tập⁩
    English Tiếng Việt
    digit/ˈdɪdʒɪt/ chữ số
    binary/ˈbaɪnəri/ nhị phân
    data/ˈdeɪtə/ dữ liệu
    logic gate/ˈlɒdʒɪk ɡeɪt/ cổng logic
    processor/ˈprəʊsesə/ bộ xử lý
    register/ˈredʒɪstə/ đăng ký (register)
    number system/ˈnʌmbə ˈsɪstəm/ hệ đếm
    1.1

    Number systems · ⁨Hệ đếm⁩

    Syllabus · ⁨Chương trình⁩
    English
    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
    Tiếng Việt
    Thí sinh cần có thể: Ghi chú và hướng dẫn
    1 Hiểu cách và tại sao máy tính sử dụng nhị phân để biểu diễn mọi dạng dữ liệu • Mọi dạng dữ liệu đều phải được chuyển đổi sang nhị phân để xử lý bởi máy tính • Dữ liệu được xử dụng các cổng logic và lưu trữ trong bộ nhớ tạm
    2 (a) Hiểu các hệ đếm mười, nhị phân và thập lục phân (b) Chuyển đổi giữa (i) số thập phân dương và nhị phân dương (ii) số thập phân dương và thập lục phân dương (iii) thập lục phân dương và nhị phân dương • Hệ十进制 là cơ số 10 • Hệ nhị phân là cơ số 2 • Hệ thập lục phân là cơ số 16 • Các giá trị sử dụng chỉ là số nguyên • Chuyển đổi theo cả hai chiều, ví dụ: từ thập phân sang nhị phân hoặc từ nhị phân sang thập phân • Độ dài tối đa của số nhị phân là 16-bit
    3 Hiểu cách và tại sao thập lục phân được sử dụng như một phương pháp biểu diễn dữ liệu có lợi • Xác định các lĩnh vực trong khoa học máy tính nơi sử dụng thập lục phân • Thập lục phân dễ hiểu hơn đối với con người so với nhị phân, vì nó là cách biểu diễn ngắn gọn hơn của nhị phân
    4 (a) Cộng hai số nguyên nhị phân dương 8-bit (b) Hiểu khái niệm vượt quá và tại sao nó xảy ra trong phép cộng nhị phân • Lỗi vượt quá sẽ xảy ra nếu giá trị lớn hơn 255 trong bộ nhớ tạm 8-bit • Máy tính hoặc thiết bị có giới hạn xác định trước mà nó có thể biểu diễn hoặc lưu trữ, ví dụ: 16-bit • Lỗi vượt quá xảy ra khi một giá trị nằm ngoài giới hạn này cần được trả về
    5 Thực hiện dịch chuyển nhị phân logic trên một số nguyên nhị phân dương 8-bit và hiểu tác động của nó lên số nguyên nhị phân dương đó • Thực hiện dịch chuyển trái logic • Thực hiện dịch chuyển phải logic • Thực hiện nhiều lần dịch chuyển • Các bit bị dịch ra khỏi cuối bộ nhớ tạm sẽ bị mất và zeros sẽ được dịch vào ở đầu ngược lại của bộ nhớ tạm • Số nguyên nhị phân dương sẽ được nhân hoặc chia tùy theo phép dịch thực hiện • Bit quan trọng nhất hoặc các bit ít quan trọng nhất sẽ bị mất
    6 Sử dụng hệ đếm bù hai để biểu diễn các số nguyên nhị phân dương và âm 8-bit • Chuyển đổi số nguyên nhị phân hoặc thập phân dương sang số nguyên bù hai 8-bit và ngược lại • Chuyển đổi số nguyên nhị phân hoặc thập phân âm sang số nguyên bù hai 8-bit và ngược lại

    Source: Cambridge International syllabus · ⁨Nguồn: Chương trình 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")
    Tiếng Việt
    Đếm trong nhị phân: 0 đến 15

    Hệ đếm là cách viết số bằng một tập hợp cố định các chữ số. Bạn cần biết ba hệ đếm sau.

    Hệ Cơ số Các chữ số sử dụng
    Thập phân 10 0–9
    Nhị phân 2 0 và 1
    Thập lục phân 16 0–9 sau đó A–F
    • mập phân là hệ đếm thông thường (còn gọi là thập phân).
    • nhị phân chỉ sử dụng 0 và 1.
    • thập lục phân (hex) sử dụng mười sáu chữ số: 0–9, sau đó A, B, C, D, E, F đại diện cho 10, 11, 12, 13, 14, 15.

    Cơ số cho bạn biết hệ thống đó sử dụng bao nhiêu chữ số khác nhau.

    Giá trị vị trí

    Mỗi cột trong một con số có một giá trị vị trí. Trong nhị phân, giá trị vị trí tăng gấp đôi từ phải sang trái. Với một số 8 bit, chúng là:

    128  64  32  16  8  4  2  1
    
    Bảng giá trị vị trí 8 bit với các giá trị từ 128 xuống 1, và các bit của 150 được đặt dưới các cột cộng lại thành 150
    Bảng giá trị vị trí 8 bit: các số 1 nằm dưới các giá trị mà tổng của chúng bằng 150

    Một bit là một 0 hoặc 1 duy nhất. Tám bit tạo thành một byte. Bốn bit (nửa byte) là một nibble.

    Chuyển đổi giữa các hệ đếm

    Thập phân → Nhị phân. Viết các giá trị vị trí. Đặt số 1 dưới mỗi giá trị bạn cần để chúng cộng lại bằng số của bạn; đặt số 0 dưới những giá trị còn lại.

    Ví dụ: chuyển thập phân 150 sang nhị phân. $150 = 128 + 16 + 4 + 2$.

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

    Vậy $150$ = 10010110.

    Nhị phân → Thập phân. Cộng các giá trị vị trí nơi có số 1. 10010110 $= 128 + 16 + 4 + 2 = 150$.

    Thập lục phân → Nhị phân. Chuyển mỗi chữ số thập lục phân thành nhóm 4 bit riêng biệt (một nibble).

    Ví dụ: hex F08. $F = 1111$, $0 = 0000$, $8 = 1000$, nên F08 = 1111 0000 1000.

    Ba chữ số thập lục phân F, 0 và 8, mỗi chữ số có mũi tên trỏ xuống nhóm bốn bit riêng của nó
    Mỗi chữ số thập lục phân ánh xạ vào nibble 4 bit riêng của nó — F08 = 1111 0000 1000

    Nhị phân → Thập lục phân. Nhóm các bit thành các nibble 4 bit, bắt đầu từ bên phải. Chuyển mỗi nibble thành một chữ số thập lục phân.

    Thập phân → Thập lục phân. Cách dễ dàng là chuyển sang nhị phân trước, sau đó từ nhị phân sang hex.

    Bảng này giúp ghi nhớ các chữ cái hex:

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

    Các câu hỏi Cambridge sử dụng số nhị phân lên đến 16 bit.

    Ví dụ giải. Chuyển thập phân 100 sang nhị phân 8 bit, sau đó sang thập lục phân.

    $100 = 64 + 32 + 4$, nên nhị phân là 01100100. Chia thành các nibble, 0110 0100 $= 6$ và $4$, nên thập lục phân là 64.

    Tại sao dùng thập lục phân

    Hex ngắn hơn nhị phân và dễ đọc, dễ viết hơn đối với con người. Một chữ số hex thay thế cho 4 chữ số nhị phân, giúp bạn ít mắc sai sót hơn. Giá trị không thay đổi — hex chỉ là cách viết gọn hơn để biểu cùng một dãy nhị phân.

    Các nhà khoa học máy tính sử dụng hex cho:

    • Địa chỉ MAC và địa chỉ IPv6
    • Mã màu trong HTML (ví dụ #FF0000 là màu đỏ)
    • Địa chỉ bộ nhớ và mã lỗi
    • Hiển thị nội dung bộ nhớ (gọi là "dump bộ nhớ")
    Explore · ⁨Khám phá⁩

    Binary, denary and hex · ⁨Nhị phân, thập phân và thập lục phân⁩

    Type a number and see it in binary, denary and hex — and how the place values build it. · ⁨Nhập một số và xem nó trong nhị phân, thập phân và thập lục phân — và cách các giá trị vị trí xây dựng nên nó.⁩

    Vocabulary · ⁨Từ vựng⁩ Train · ⁨Luyện tập⁩
    English Tiếng Việt
    denary/ˈdiːnəri/ chữ số thập phân
    hexadecimal/ˌheksəˈdesɪml/ chữ số thập lục phân
    base/beɪs/ cơ số
    place value/pleɪs ˈvæljuː/ giá trị vị trí
    bit/bɪt/ bit
    byte/baɪt/ byte
    nibble/ˈnɪbl/ nibble
    memory address/ˈmeməri əˈdres/ địa chỉ bộ nhớ
    1.1

    Binary addition · ⁨Phép cộng nhị phân⁩

    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.

    Tiếng Việt

    Bạn có thể cộng hai số nhị phân 8 bit, từng cột từ phải sang trái, giống hệt như thập phân. Các quy tắc cho một cột là:

    A B Bit kết quả Mang
    0 0 0 0
    0 1 1 0
    1 0 1 0
    1 1 0 1

    Khi cũng có mang vào, $1 + 1 + 1 = 1$ với mang là 1.

    Ví dụ: cộng 01110110 (118) và 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)
    
    Phép cộng nhị phân 8 bit của 118 và 48 với các bit mang được hiển thị bằng màu đỏ ở trên các cột bên trái, cho kết quả là 166
    Cộng từng cột; các bit mang lan truyền sang trái. 118 + 48 = 166

    Vượt quá giới hạn

    Bộ nhớ tạm 8 bit chỉ có thể chứa giá trị thập phân từ 0 đến 255. Nếu phép cộng cho ra kết quả lớn hơn 255, đáp án cần 9 bit. Bộ nhớ tạm không thể chứa bit bổ sung này, nên nó bị mất. Hiện tượng này gọi là vượt quá giới hạn (lỗi vượt quá giới hạn). Nó xảy ra khi giá trị nằm ngoài phạm vi mà bộ nhớ tạm có thể lưu trữ.

    Ví dụ: 11001000 (200) + $+$ + 01001000 (72) = $= 272$. Trong nhị phân đó là 1 00010000, cần 9 bit. Bit 1 ở đầu sẽ không vừa trong 8 bit, nên đáp án được lưu sẽ sai.

    Cộng 200 và 72 cho ra 272, trong nhị phân cần chín bit; bộ nhớ tạm 8 bit chỉ giữ lại tám bit thấp và mất bit thứ chín, nên đáp án được lưu là 16 chứ không phải 272
    Cộng 200 và 72 cần 9 bit, nhưng bộ nhớ tạm 8 bit bỏ đi bit thứ chín, nên đáp án sai
    Vocabulary · ⁨Từ vựng⁩ Train · ⁨Luyện tập⁩
    English Tiếng Việt
    overflow/ˌəʊvəˈfləʊ/ tràn
    logical binary shift/ˈlɒdʒɪkl ˈbaɪnəri ʃɪft/ dịch chuyển nhị phân logic
    least significant bit/liːst sɪɡˈnɪfɪkənt bɪt/ bit có giá trị nhỏ nhất
    two's complement/tuːz ˈkɒmplɪmənt/ bổ hai
    most significant bit/məʊst sɪɡˈnɪfɪkənt bɪt/ bit có giá trị cao nhất
    character set/ˈkærɪktə set/ bảng ký tự
    1.1

    Logical binary shift · ⁨Dịch chuyển nhị phân logic⁩

    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.

    Tiếng Việt

    Dịch chuyển nhị phân logic di chuyển tất cả các bit sang trái hoặc phải một số lượng vị trí.

    • Các bit bị dịch ra khỏi cuối bộ nhớ tạm sẽ bị mất.
    • Các số không được thêm vào đầu trống.

    Dịch sang trái nhân số đó với 2 cho mỗi vị trí dịch. Dịch sang phải chia nó cho 2 cho mỗi vị trí; các bit bên phải cùng (các bit ít quan trọng nhất) sẽ bị mất.

    Ví dụ: dịch trái 00110101 (53) đi 2 vị trí.

    start:         0 0 1 1 0 1 0 1
    left shift 2:  1 1 0 1 0 1 0 0
    
    Phép dịch trái logic hai vị trí: các mũi tên di chuyển mỗi bit sang trái hai cột, hai bit bên trái cùng bị mất và hai số không xuất hiện từ bên phải
    D产业的发展向左 dịch 2 vị trí: mỗi bit di chuyển 2 vị trí sang trái, các bit trên cùng bị mất và zeros điền vào bên phải

    Kết quả là 11010100 (212), tương đương với $53 \times 4$. Hai bit ở phía bên trái đã bị mất và hai zeros đi vào từ bên phải. Nếu một bit 1 bị đẩy ra khỏi cuối chuỗi, thông tin đó sẽ mất vĩnh viễn.

    1.1

    Two's complement · ⁨Bù hai⁩

    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$.

    Tiếng Việt

    Cho đến nay, các số đều là số dương. Bù hai cho phép một thanh ghi 8-bit chứa cả số âm.

    Trong bù hai, bit ở phía bên trái (gọi là bit quan trọng nhất, hay MSB) có giá trị mang dấu âm:

    -128  64  32  16  8  4  2  1
    
    • Nếu MSB là 0, số là số dương.
    • Nếu MSB là 1, số là số âm.

    Để biến số dương thành số âm: viết mã nhị phân của số dương, đảo ngược mọi bit (0↔1), sau đó cộng thêm 1.

    Ví dụ: tạo ra số $-40$.

    • $+40$ = 00101000
    • Đảo ngược các bit = 11010111
    • Cộng 1 = 11011000

    Vậy $-40$ = 11011000. Kiểm tra bằng cách cộng các giá trị vị trí: $-128 + 64 + 16 + 8 = -40$.

    Biểu đồ bù hai 8-bit trong đó bit quan trọng nhất có giá trị -128, với 11011000 được làm nổi bật để biểu thị -40
    Bit quan trọng nhất có giá trị −128, nên 11011000 = −128 + 64 + 16 + 8 = −40

    Để đọc một số bù hai âm, chỉ cần cộng các giá trị vị trí (bit MSB tính là $-128$). Phạm vi của một số bù hai 8-bit là từ $-128$ đến $+127$.

    1.2

    Representing text · ⁨Biểu diễn văn bản⁩

    Syllabus · ⁨Chương trình⁩
    English
    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
    Tiếng Việt
    Thí sinh cần có thể: Ghi chú và hướng dẫn
    1 Hiểu cách và tại sao máy tính biểu diễn văn bản và việc sử dụng bộ mã ký tự, bao gồm mã tiêu chuẩn Mỹ cho trao đổi thông tin (ASCII) và Unicode • Văn bản được chuyển đổi sang nhị phân để xử lý bởi máy tính • Unicode cho phép một phạm vi ký tự và biểu tượng rộng hơn ASCII, bao gồm các ngôn ngữ khác nhau và emoji • Unicode đòi hỏi nhiều bit hơn mỗi ký tự so với ASCII
    2 Hiểu cách và tại sao máy tính biểu diễn âm thanh, bao gồm cả tác động của tần số lấy mẫu và độ phân giải lấy mẫu • Sóng âm được lấy mẫu để âm thanh được chuyển đổi sang nhị phân, sau đó được xử lý bởi máy tính • Tần số lấy mẫu là số lượng mẫu được thu thập trong một giây • Độ phân giải lấy mẫu là số bit trên mỗi mẫu • Độ chính xác của bản ghi và kích thước tệp tăng lên khi tần số lấy mẫu và độ phân giải tăng lên
    3 Hiểu cách và tại sao máy tính biểu diễn hình ảnh, bao gồm cả ảnh hưởng của độ phân giải và độ sâu màu • Hình ảnh là một chuỗi các pixel được chuyển đổi sang nhị phân, sau đó được xử lý bởi máy tính • Độ phân giải là số lượng pixel trong hình ảnh • Độ sâu màu là số bit được sử dụng để biểu diễn mỗi màu • Kích thước tệp và chất lượng hình ảnh tăng lên khi độ phân giải và độ sâu màu tăng lên

    Source: Cambridge International syllabus · ⁨Nguồn: Chương trình 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 存储.

    Tiếng Việt

    Máy tính lưu trữ văn bản bằng cách gán một con số cho mỗi ký tự, sau đó lưu con số đó dưới dạng nhị phân. Tập hợp các ký tự mà máy tính có thể sử dụng, cùng với các con số tương ứng, gọi là bảng mã ký tự.

    • ASCII sử dụng 7 bit cho mỗi ký tự, do đó có 128 ký tự khác nhau. Điều này đủ cho chữ cái tiếng Anh, chữ số và các ký hiệu thông thường.
    • Unicode sử dụng nhiều bit hơn cho mỗi ký tự. Nó có thể biểu diễn rất nhiều ký tự — nhiều ngôn ngữ, cùng các ký hiệu và emoji.

    Vì Unicode có nhiều ký tự hơn, nó cần nhiều bit hơn cho mỗi ký tự so với ASCII, nên cùng một đoạn văn bản sẽ chiếm nhiều bộ nhớ hơn.

    ASCII dùng 7 bit cho mỗi ký tự với 128 ký tự, đủ cho tiếng Anh; Unicode dùng nhiều bit hơn cho rất nhiều ký tự bao gồm nhiều ngôn ngữ và emoji, nhưng tốn nhiều bộ nhớ hơn
    ASCII dùng 7 bit cho 128 ký tự; Unicode dùng nhiều bit hơn cho rất nhiều ký tự nhưng tốn nhiều bộ nhớ hơn
    Vocabulary · ⁨Từ vựng⁩ Train · ⁨Luyện tập⁩
    English Tiếng Việt
    emoji/ɪˈməʊdʒi/ emoji
    1.2

    Representing sound · ⁨Biểu diễn âm thanh⁩

    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.

    Tiếng Việt

    Một sóng âm có dạng mượt mà và luôn thay đổi. Để lưu trữ sóng âm, máy tính đo độ cao của sóng tại những thời điểm đều đặn. Quá trình này gọi là lấy mẫu, và mỗi lần đo là một mẫu.

    Sóng âm mượt mà với các đường kẻ dọc tại các khoảng thời gian đều đặn để đo độ cao, đánh dấu khoảng lấy mẫu và biên độ
    Lấy mẫu ghi lại độ cao (biên độ) của sóng tại các thời điểm đều đặn
    • tốc độ lấy mẫu là số mẫu được thu thập mỗi giây (đo bằng Hz).
    • độ phân giải mẫu là số bit được sử dụng cho mỗi mẫu. Độ cao của sóng tại một điểm mẫu gọi là biên độ.

    Tốc độ lấy mẫu cao hơn và độ phân giải mẫu cao hơn cho bản ghi chính xác hơn, nhưng dung lượng file lớn hơn.

    Explore · ⁨Khám phá⁩

    Representing sound · ⁨Biểu diễn âm thanh⁩

    y = a sin(bt + c)

    Sound is a wave; sampling records its height many times a second. · ⁨Âm thanh là sóng; lấy mẫu ghi lại độ cao của nó nhiều lần trong một giây.⁩

    Vocabulary · ⁨Từ vựng⁩ Train · ⁨Luyện tập⁩
    English Tiếng Việt
    sampling/ˈsæmplɪŋ/ mẫu hóa
    sample rate/ˈsæmpl reɪt/ tần số lấy mẫu
    sample resolution/ˈsæmpl ˌrezəˈluːʃn/ độ phân giải mẫu
    amplitude/ˈæmplɪtjuːd/ biên
    1.2

    Representing images · ⁨Biểu diễn hình ảnh⁩

    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.

    Tiếng Việt

    Hình ảnh máy tính được tạo thành từ một lưới các chấm nhỏ gọi là pixel.

    Lưới pixel kích thước 8 x 8 tạo nên một bức tranh màu đơn giản, với một ô vuông được dán nhãn là một pixel
    Một ảnh bitmap là một lưới pixel; độ phân giải là số lượng pixel mà nó chứa
    • độ phân giải là số lượng pixel trong hình ảnh (ví dụ $1920 \times 1080$).
    • độ sâu màu là số bit được dùng để lưu trữ màu sắc của mỗi pixel.

    Độ phân giải cao hơn và độ sâu màu cao hơn cho chất lượng hình ảnh tốt hơn, nhưng dung lượng file lớn hơn.

    Vocabulary · ⁨Từ vựng⁩ Train · ⁨Luyện tập⁩
    English Tiếng Việt
    pixel/ˈpɪksl/ pixel
    resolution/ˌrezəˈluːʃn/ độ phân giải
    colour depth/ˈkʌlə depθ/ độ sâu màu
    compression/kəmˈpreʃn/ nén dữ liệu
    bandwidth/ˈbændwɪdθ/ băng thông
    transmission/trænˈsmɪʃn/ truyền tải
    lossless/ˈlɒsləs/ không mất mát
    run-length encoding/rʌn leŋθ enˈkəʊdɪŋ/ mã hóa run-length
    lossy/ˈlɒsi/ có mất mát
    1.3

    Measuring data storage · ⁨Đo lường bộ lưu trữ dữ liệu⁩

    Syllabus · ⁨Chương trình⁩
    English
    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)
    Tiếng Việt
    Thí sinh cần có thể: Ghi chú và hướng dẫn
    1 Understand how data storage is measured • Bao gồm: – bit – nibble – byte – kibibyte (KiB) – mebibyte (MiB) – gibibyte (GiB) – tebibyte (TiB) – pebibyte (PiB) – exbibyte (EiB) • Số lượng đơn vị trước đó có trong kích thước lưu trữ dữ liệu, ví dụ: – 8 bits trong một byte – 1024 mebibytes trong một gibibyte
    2 Tính toán kích thước tệp của một tệp hình ảnh và một tệp âm thanh, sử dụng thông tin đã cho • Đáp án phải được đưa ra theo đơn vị được chỉ định trong câu hỏi. Các phép tính phải sử dụng đơn vị đo lường là 1024 và không phải 1000 • Thông tin đã cho có thể bao gồm: – độ phân giải và độ sâu màu của hình ảnh – tốc độ lấy mẫu, độ phân giải và thời lượng bài hát của âm thanh
    3 Understand the purpose of and need for data compression • Nén dữ liệu tồn tại để giảm kích thước tệp • Tác động của việc này là gì, ví dụ: – ít băng thông hơn cần thiết – ít không gian lưu trữ hơn cần thiết – thời gian truyền tải ngắn hơn
    4 Understand how files are compressed using lossy and lossless compression methods • Nén mất mát (lossy) làm giảm kích thước tệp bằng cách loại bỏ dữ liệu vĩnh viễn, ví dụ: giảm độ phân giải hoặc độ sâu màu, giảm tốc độ lấy mẫu hoặc độ phân giải • Nén không mất mát (lossless) làm giảm kích thước tệp mà không làm mất dữ liệu vĩnh viễn, ví dụ: mã hóa run length (RLE)

    Source: Cambridge International syllabus · ⁨Nguồn: Chương trình Cambridge International⁩

    English

    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
    Tiếng Việt

    Bộ lưu trữ dữ liệu được đo bằng các đơn vị dưới đây. Một nibble là 4 bit và một byte là 8 bit; kể từ kibibyte trở lên, mỗi đơn vị gấp 1024 lần đơn vị trước đó (vì $1024 = 2^{10}$, phù hợp với hệ nhị phân).

    Đơn vị Tương đương
    bit một số 0 hoặc 1 duy nhất
    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

    Các đĩa cứng: bộ lưu trữ được đo bằng byte — để biết kích thước file cần chiều rộng × chiều cao × độ sâu màu đối với hình ảnh *Đĩa cứng: bộ lưu trữ được đo bằng byte — để biết kích thước file cần chiều rộng × chiều cao × độ sâu màu đối với hình ảnh

    Vocabulary · ⁨Từ vựng⁩ Train · ⁨Luyện tập⁩
    English Tiếng Việt
    storage/ˈstɔːrɪdʒ/ lưu trữ
    sound wave/saʊnd weɪv/ sóng âm
    Watch lesson · ⁨Xem bài học⁩
    1.3

    Calculating file size · ⁨Tính toán kích thước file⁩

    English

    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
    Tiếng Việt

    Kích thước file hình ảnh (tính bằng bit) $=$ độ phân giải $\times$ độ sâu màu $=$ chiều rộng $\times$ chiều cao $\times$ độ sâu màu.

    Ví dụ: một hình ảnh có $1024 \times 1024$ pixel với độ sâu màu là 2 byte ($= 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

    Kích thước file âm thanh (tính bằng bit) $=$ tốc độ lấy mẫu $\times$ độ phân giải mẫu $\times$ độ dài tính bằng giây.

    Luôn chia cho 1024 (không phải 1000) để đổi sang KiB, MiB và v.v. Đưa câu trả lời về đơn vị mà câu hỏi yêu cầu.

    Ví dụ đã giải. Một âm thanh được ghi trong 30 giây với tần số lấy mẫu là 8,000 Hz và độ phân giải lấy mẫu là 16 bit. Tìm dung lượng tệp tính bằng 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 · ⁨Nén dữ liệu⁩

    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.

    Tiếng Việt

    Nén làm cho file nhỏ hơn. File nhỏ hơn:

    • tiết kiệm không gian lưu trữ,
    • đòi hỏi ít băng thông hơn (lượng dữ liệu mà kết nối có thể truyền tải),
    • mất ít thời gian hơn để gửi (thời gian truyền ngắn hơn).

    Có hai loại nén.

    Nén không mất dữ liệu

    Nén không mất dữ liệu làm cho file nhỏ hơn mà không bị mất dữ liệu vĩnh viễn. File gốc có thể được tái tạo chính xác.

    Một phương pháp là mã hóa độ dài chuỗi (RLE). Nó thay thế một chuỗi các giá trị lặp lại bằng một bản sao của giá trị đó và một đếm số lần lặp lại. Ví dụ WWWWWWWW (8 trắng) được lưu trữ là "8 W". Phương pháp này hoạt động tốt khi dữ liệu có nhiều giá trị lặp lại.

    Một dải gồm 8 ô vuông trắng sau đó 4 ô vuông đỏ được nén thành các cặp 8 W và 4 R
    Mã hóa độ dài chuỗi lưu mỗi chuỗi chỉ một lần dưới dạng số lượng và giá trị

    Nén mất dữ liệu

    Nén mất dữ liệu làm cho tập tin nhỏ hơn rất nhiều bằng cách loại bỏ vĩnh viễn một phần dữ liệu. Phần dữ liệu bị loại bỏ không thể lấy lại được. Ví dụ:

    • giảm độ phân giải hoặc độ sâu màu của hình ảnh,
    • giảm tốc độ mẫu hoặc độ phân giải mẫu của âm thanh.

    Sử dụng nén không mất dữ liệu khi bạn cần giữ nguyên mọi chi tiết (tập tin văn bản và chương trình). Sử dụng nén mất dữ liệu cho ảnh, nhạc và video, nơi sự suy giảm chất lượng nhỏ là đáng để có một tập tin nhỏ hơn nhiều.

    Explore · ⁨Khám phá⁩

    Run-length encoding · ⁨Mã hóa độ dài chuỗi⁩

    Watch repeated symbols get squashed into a count — simple lossless compression. · ⁨Quan sát các ký hiệu lặp lại bị nén thành một phép đếm — nén không mất dữ liệu đơn giản.⁩

    1.3

    Exam tips · ⁨Mẹo làm bài thi⁩

    English
    • 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.
    Tiếng Việt
    • Chuyển đổi thập phân → nhị phân bằng cách trừ đi các giá trị vị trí (128, 64, 32 …); nhị phân → thập phân bằng cách cộng các giá trị vị trí chứa số 1.
    • Để chuyển sang thập phân, nhóm các bit nhị phân thành nibble gồm 4 bit từ phải sang trái; mỗi nibble tương ứng chính xác với một chữ số thập phân.
    • Tràn xảy ra khi kết quả cần nhiều bit hơn bộ nhớ đăng ký có (một bộ nhớ đăng ký 8 bit chỉ chứa 0–255), nên bit thừa sẽ bị mất.
    • Kích thước tập tin theo bit: đối với hình ảnh, chiều rộng × chiều cao × độ sâu màu; đối với âm thanh, tốc độ mẫu × độ phân giải × thời gian. Chia cho 8 để có byte, sau đó chia tiếp cho 1024 cho mỗi đơn vị lớn hơn.
    • Nén không mất dữ liệu giữ lại mọi bit (văn bản; mã hóa độ dài chuỗi); nén mất dữ liệu loại bỏ vĩnh viễn dữ liệu (ảnh, nhạc) để tạo ra tập tin nhỏ hơn nhiều.
  • 2

    Data transmission · ⁨Truyền dẫn dữ liệu⁩

    Watch lesson · ⁨Xem bài học⁩
    2.1

    What is data transmission? · ⁨Truyền dẫn dữ liệu là gì?⁩

    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.
    Tiếng Việt

    Truyền dẫn dữ liệu có nghĩa là di chuyển dữ liệu từ nơi này sang nơi khác — ví dụ từ máy tính của bạn đến một trang web, hoặc từ điện thoại đến máy in.

    Dữ liệu thường chạy dọc theo cáp. Hai loại cáp phổ biến được hiển thị bên dưới.

    Cận cảnh một cáp mạng kết thúc bằng phích cắm nhựa trong suốt có các chân kim loại mạ vàng
    Cáp Ethernet với phích cắm RJ45, thường dùng để truyền dữ liệu trên mạng có dây
    Một sợi cáp được mở ra để hiển thị các sợi thủy tinh mỏng bên trong, với thước kẻ làm quy chiếu tỷ lệ
    Cáp quang truyền dữ liệu dưới dạng xung ánh sáng dọc theo các sợi thủy tinh mỏng

    Trước khi gửi, dữ liệu được tách thành các mảnh nhỏ có kích thước bằng nhau gọi là gói. Mỗi gói truyền riêng lẻ và chúng được ghép lại với nhau ở đầu kia.

    Việc sử dụng gói mang lại lợi ích:

    • nếu một gói bị mất hoặc hư hỏng, chỉ gói đó được gửi lại, không phải toàn bộ tập tin;
    • các gói có thể đi qua các tuyến đường khác nhau, vì vậy các tuyến đường bận rộn hoặc bị hỏng có thể được tránh khỏi;
    • nhiều người dùng có thể cùng chia sẻ một kết nối tại cùng một thời điểm.
    2.1

    The structure of a packet · ⁨Cấu trúc của một gói⁩

    Syllabus · ⁨Chương trình⁩
    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
    Tiếng Việt
    Thí sinh cần có thể: Ghi chú và hướng dẫn
    1 (a) Hiểu rằng dữ liệu được chia nhỏ thành các gói tin để truyền tải
    (b) Describe the structure of a packet • Một gói dữ liệu chứa: – header gói – payload – trailer • Header gói bao gồm: – địa chỉ đích – số gói – địa chỉ người gửi
    (c) Describe the process of packet switching • Dữ liệu được chia nhỏ thành các gói • Mỗi gói có thể đi theo một tuyến đường khác nhau • Bộ định tuyến (router) kiểm soát tuyến đường mà gói dữ liệu đi qua • Các gói có thể đến không theo thứ tự • Sau khi gói cuối cùng đã đến, các gói sẽ được sắp xếp lại thứ tự
    2 (a) Describe how data is transmitted from one device to another using different methods of data transmission • Bao gồm: – nối tiếp (serial) – song song (parallel) – đơn công (simplex) – bán song công (half-duplex) – toàn song công (full-duplex)
    (b) Explain the suitability of each method of data transmission, for a given scenario • Bao gồm cả ưu điểm và nhược điểm của từng phương pháp
    3 Understand the universal serial bus (USB) interface and explain how it is used to transmit data • Bao gồm cả lợi ích và nhược điểm của giao diện

    Source: Cambridge International syllabus · ⁨Nguồn: Chương trình 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).
    Tiếng Việt

    Mỗi gói đều có ba phần.

    Một gói được biểu diễn dưới dạng ba khối liền kề — tiêu đề, phần payload và đuôi — với nội dung của tiêu đề được liệt kê bên dưới
    Một gói có tiêu đề, phần payload (dữ liệu) và đuôi; tiêu đề chứa địa chỉ và số thứ tự gói
    Phần contents chứa
    tiêu đề gói thông tin điều khiển (xem bên dưới)
    payload dữ liệu thực tế đang được vận chuyển
    đuôi chỉ ra nơi gói kết thúc, plus kiểm tra lỗi

    Tiêu đề gói chứa:

    • địa chỉ IP của người gửi (nơi gói đến từ),
    • địa chỉ IP của người nhận (nơi nó đang đi tới),
    • số thứ tự gói (để các gói có thể được ghép lại theo đúng thứ tự).
    Vocabulary · ⁨Từ vựng⁩ Train · ⁨Luyện tập⁩
    English Tiếng Việt
    data transmission/ˈdeɪtə trænˈsmɪʃn/ truyền dữ liệu
    packets/ˈpækɪts/ các gói tin
    packet header/ˈpækɪt ˈhedə/ header gói tin
    payload/ˈpeɪləʊd/ payload (phần tải)
    trailer/ˈtreɪlə/ trailer
    address/əˈdres/ địa chỉ
    2.1

    Packet switching · ⁨Chuyển đổi gói⁩

    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.
    Tiếng Việt

    Chuyển đổi gói là cách các gói được gửi trên mạng.

    Hai gói đang di chuyển từ người gửi đến người nhận qua một mạng lưới các bộ định tuyến, mỗi gói đi theo một tuyến đường màu sắc khác nhau
    Các bộ định tuyến chuyển tiếp gói, và các gói khác nhau có thể đi theo các tuyến đường khác nhau đến cùng một người nhận
    • Các thiết bị đặc biệt gọi là bộ định tuyến đọc tiêu đề của từng gói và chọn tuyến đường tốt nhất cho nó.
    • Mỗi gói có thể đi theo lộ trình riêng, vì vậy các gói có thể di chuyển theo các hướng khác nhau.
    • Các gói có thể đến không theo thứ tự.
    • Khi gói cuối cùng đã đến, các gói sẽ được sắp xếp lại dựa trên số thứ tự gói.
    Explore · ⁨Khám phá⁩

    How data travels in packets · ⁨Cách dữ liệu di chuyển trong các gói tin⁩

    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. · ⁨Quá trình chuyển mạch gói. Việc chia một tập tin thành các gói tin có địa chỉ là lý do tại sao một gói tin bị mất chỉ cần gửi lại, và lý do tại sao nhiều người dùng có thể chia sẻ cùng một đường truyền.⁩

    Vocabulary · ⁨Từ vựng⁩ Train · ⁨Luyện tập⁩
    English Tiếng Việt
    packet switching/ˈpækɪt ˈswɪtʃɪŋ/ chuyển mạch gói tin
    routers/ˈruːtəz/ bộ định tuyến
    2.1

    Methods of data transmission · ⁨Phương thức truyền dẫn dữ liệu⁩

    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.

    Tiếng Việt

    Serial và song song

    Serial Song song
    Cách một bit một, dọc theo một dây nhiều bit cùng lúc, dọc theo nhiều dây
    Khoảng cách tốt trên khoảng cách dài tốt chỉ trên khoảng cách ngắn
    Chi phí rẻ hơn (ít dây hơn) đắt hơn (nhiều dây hơn)
    Lỗi các bit giữ nguyên thứ tự các bit có thể đến vào các thời điểm hơi khác nhau trên các dây dài

    Serial gửi một bit sau một bit dọc theo một dây duy nhất. Song song gửi nhiều bit cùng lúc dọc theo nhiều dây, do đó nó nhanh hơn trên khoảng cách ngắn.

    Truyền dẫn serial như các bit nằm thành hàng trên một dây, và truyền dẫn song song như nhiều bit di chuyển cùng nhau trên nhiều dây
    Truyền dẫn serial gửi một bit một dọc theo một dây; truyền dẫn song song gửi nhiều bit cùng lúc dọc theo nhiều dây

    Đơn công, bán song công và song công đầy đủ

    Những thuật ngữ này mô tả hướng mà dữ liệu có thể di chuyển.

    Hai thiết bị A và B với các mũi tên chỉ hướng đơn công (một chiều), bán song công (hai chiều nhưng từng cái một) và song công đầy đủ (hai chiều cùng lúc)
    Đơn công chỉ một chiều; bán song công hai chiều nhưng từng cái một; song công đầy đủ hai chiều cùng lúc
    Phương pháp Hướng
    đơn công chỉ một hướng (ví dụ: máy tính → máy in)
    bán song công hai hướng, nhưng chỉ một hướng tại một thời điểm (ví dụ: bộ đàm)
    song công đầy đủ hai hướng cùng lúc (ví dụ: cuộc gọi điện thoại)

    Chọn phương pháp

    Lựa chọn phụ thuộc vào khoảng cách, tốc độ cần thiết, chi phí, và liệu dữ liệu có phải di chuyển hai chiều cùng lúc hay không.

    Vocabulary · ⁨Từ vựng⁩ Train · ⁨Luyện tập⁩
    English Tiếng Việt
    serial/ˈsɪərɪəl/ serial
    parallel/ˈpærəlel/ song song
    simplex/ˈsɪmpleks/ đơn song
    half-duplex/hɑːf ˈdjuːpleks/ bán song song
    full-duplex/fʊl ˈdjuːpleks/ song song hoàn toàn
    universal serial bus/ˌjuːnɪˈvɜːsl ˈsɪərɪəl bʌs/ bus nối tiếp phổ quát
    interface/ˈɪntəfeɪs/ interface
    interference/ˌɪntəˈfɪərəns/ can thiệp
    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.
    Tiếng Việt

    Bus serial phổ quát (USB) là một giao diện (điểm kết nối) phổ biến dùng để kết nối các thiết bị với máy tính.

    Lợi ích:

    • cùng một đầu nối được sử dụng bởi nhiều thiết bị (một chuẩn duy nhất);
    • thiết bị được phát hiện tự động và driver phù hợp được tải lên;
    • nó cung cấp nguồn điện, do đó có thể sạc hoặc vận hành thiết bị;
    • đầu nối chỉ phù hợp theo một hướng, nên khó cắm sai.

    Nhược điểm:

    • cáp chỉ có thể dài ở mức hạn chế (vài mét);
    • các phiên bản USB cũ hơn chậm hơn các phiên bản mới;
    • tốc độ truyền có thể thấp hơn so với một số loại kết nối khác.
    Năm hình dạng phích cắm USB khác nhau đặt cạnh nhau — micro, mini, type-B và type-A — kèm thanh tỷ lệ 5 cm
    Một vài loại phích cắm USB. Tất cả đều sử dụng chuẩn USB giống nhau, nên thiết bị được phát hiện tự động.
    2.2

    Why we check for errors · ⁨Tại sao chúng ta kiểm tra lỗi⁩

    Syllabus · ⁨Chương trình⁩
    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
    Tiếng Việt
    Thí sinh cần có thể: Ghi chú và hướng dẫn
    1 Understand the need to check for errors after data transmission and how these errors can occur • Lỗi có thể xảy ra trong quá trình truyền dữ liệu do nhiễu, ví dụ: mất dữ liệu, thêm dữ liệu và thay đổi dữ liệu
    2 Describe the processes involved in each of the following error detection methods for detecting errors in data after transmission: parity check (lẻ và chẵn), checksum và echo check • Bao gồm kiểm tra byte chẵn lẻ và khối kiểm tra chẵn lẻ
    3 Mô tả cách sử dụng chữ số kiểm tra để phát hiện lỗi khi nhập liệu và xác định các ví dụ về việc sử dụng chữ số kiểm tra, bao gồm số sách tiêu chuẩn quốc tế (ISBN) và mã vạch
    4 Describe how an automatic repeat query (ARQ) can be used to establish that data is received without error • Bao gồm việc sử dụng: – xác nhận tích cực/tiêu cực – thời gian chờ (timeout)

    Source: Cambridge International syllabus · ⁨Nguồn: Chương trình 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.

    Tiếng Việt

    Trong khi dữ liệu đang di chuyển, nhiễu có thể làm thay đổi nó. Ba điều có thể xảy ra:

    • mất dữ liệu — một số bit không đến được đích;
    • thêm dữ liệu — các bit bổ sung được thêm vào;
    • thay đổi dữ liệu — một số bit bị đảo ngược.

    Vì vậy, người nhận kiểm tra xem dữ liệu có đến đúng hay không.

    Watch lesson · ⁨Xem bài học⁩
    2.2

    Error detection methods · ⁨Các phương pháp phát hiện lỗi⁩

    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).

    Tiếng Việt

    Kiểm tra tính chẵn lẻ

    Một kiểm tra tính chẵn lẻ thêm một bit bổ sung, gọi là bit chẵn lẻ, vào mỗi byte. Có hai loại:

    Dữ liệu có bốn số 1 (chẵn); bit chẵn lẻ là 0 giữ cho nó vẫn chẵn
    Thêm bit chẵn/lẻ để tổng số bit 1 là chẵn (hoặc lẻ)
    • tính chẵn lẻ chẵn — tổng số lượng số 1 trong byte (bao gồm cả bit chẵn lẻ) phải là số chẵn;
    • tính chẵn lẻ lẻ — tổng số lượng số 1 phải là số lẻ.

    Ví dụ (tính chẵn lẻ chẵn): dữ liệu 1011001 có bốn số 1, vốn đã là số chẵn, nên bit chẵn lẻ sẽ là 0:

    parity bit + data
        0        1011001
    

    Để tìm lỗi: người nhận đếm số lượng số 1. Nếu thỏa thuận sử dụng tính chẵn lẻ chẵn nhưng một byte xuất hiện với số lượng số 1 lẻ, thì đã có lỗi xảy ra trong quá trình truyền.

    Kiểm tra tính chẵn lẻ không thể phát hiện mọi lỗi. Nếu hai bit bị đảo ngược, tổng đếm vẫn có thể trông hợp lệ.

    Ví dụ minh họa. Một bit chẵn lẻ đơn lẻ cho bạn biết rằng một lỗi đã xảy ra, nhưng không cho biết ở đâu. Một khối chẵn lẻ có thể xác định chính xác bit nào. Nhiều byte được gửi cùng lúc, mỗi byte có một bit chẵn lẻ hàng riêng, và một byte chẵn lẻ bổ sung ở phía dưới chứa một bit chẵn lẻ cho mỗi cột. Tính chẵn lẻ chẵn được sử dụng ở bên dưới, và một bit đã bị đảo ngược trong quá trình truyền. Hãy tìm nó.

              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
    

    Hàng byte 3 vi phạm tính chẵn lẻ chẵn, và cột b3 cũng vi phạm tính chẵn lẻ chẵn. Bit bị đảo ngược nằm ở nơi giao cắt của chúng: byte 3, bit b3. Thay đổi nó trở lại từ 1 sang 0 sẽ sửa chữa dữ liệu. Một bit chẵn lẻ đơn lẻ chỉ báo hiệu rằng có lỗi; một khối chẵn lẻ chỉ ra chính xác vị trí, vì vậy người nhận thậm chí có thể tự sửa chữa.

    Tổng kiểm tra

    Một tổng kiểm tra là giá trị được tính toán từ tất cả dữ liệu trước khi gửi. Người nhận tính toán lại tổng kiểm tra từ dữ liệu họ nhận được. Nếu hai giá trị không khớp, đã có lỗi xảy ra và dữ liệu sẽ được gửi lại.

    Kiểm tra phản hồi

    Trong kiểm tra phản hồi, người nhận gửi dữ liệu quay trở lại người gửi. Người gửi so sánh nó với bản gốc. Nếu chúng khác nhau, lỗi đã xảy ra. (Điều này đòi hỏi dữ liệu phải được gửi hai lần, do đó nó khá chậm.)

    Yêu cầu lặp lại tự động (ARQ)

    Yêu cầu lặp lại tự động (ARQ) sử dụng các tin nhắn gọi là xác nhận.

    • Người nhận gửi xác nhận tích cực nếu gói tin đến đúng, hoặc xác nhận tiêu cực nếu không.
    • Người gửi bắt đầu bộ hẹn giờ hết hạn. Nếu không có xác nhận tích cực nào quay về trong thời gian quy định, người gửi sẽ gửi lại gói tin.

    Digit kiểm tra

    Một digit kiểm tra là một chữ số bổ sung được đặt ở cuối một dãy số, được tính toán dựa trên các chữ số còn lại. Nó được sử dụng để phát hiện sai sót khi một dãy số được nhập bằng tay.

    Khi dãy số được nhập, digit kiểm tra được tính toán lại và so sánh. Nó có thể bắt được:

    • một digit không chính xác được nhập,
    • lỗi hoán vị (hai digit bị hoán đổi, ví dụ 21 nhập thành 12),
    • một digit bị bỏ sót hoặc thêm thừa digit,
    • lỗi phát âm (một digit nghe tương tự, ví dụ 13 và 30).

    Digit kiểm tra được sử dụng trong vạch mã và ISBN (số sách).

    Explore · ⁨Khám phá⁩

    Computing concept lab · ⁨Phòng thí nghiệm khái niệm tin học⁩

    Classify concrete examples by the computing idea they demonstrate. · ⁨Phân loại các ví dụ cụ thể theo ý tưởng tin học mà chúng minh họa.⁩

    Vocabulary · ⁨Từ vựng⁩ Train · ⁨Luyện tập⁩
    English Tiếng Việt
    parity check/ˈpærɪti tʃek/ kiểm tra chẵn lẻ
    parity bit/ˈpærɪti bɪt/ bit chẵn lẻ
    parity block/ˈpærɪti blɒk/ khối chẵn lẻ
    parity byte/ˈpærɪti baɪt/ byte chẵn lẻ
    checksum/ˈtʃeksəm/ checksum
    echo check/ˈekəʊ tʃek/ kiểm tra echo
    automatic repeat request/ˌɔːtəˈmætɪk rɪˈpiːt rɪˈkwest/ y cầu gửi lại tự động
    acknowledgements/əkˈnɒlɪdʒmənts/ xác nhận
    timeout/ˈtaɪmaʊt/ giới hạn thời gian
    check digit/tʃek ˈdɪdʒɪt/ chữ số kiểm tra
    transposition error/trænspəˈzɪʃn ˈerə/ lỗi hoán vị
    barcodes/ˈbɑːkəʊdz/ vạch mã
    2.3

    Encryption · ⁨Mã hóa⁩

    Syllabus · ⁨Chương trình⁩
    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
    Tiếng Việt
    Thí sinh cần có thể: Ghi chú và hướng dẫn
    1 Hiểu nhu cầu và mục đích của mã hóa khi truyền dữ liệu
    2 Understand how data is encrypted using symmetric and asymmetric encryption • Mã hóa bất đối xứng bao gồm việc sử dụng khóa công khai và khóa riêng tư

    Source: Cambridge International syllabus · ⁨Nguồn: Chương trình 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.

    Tiếng Việt

    Tại sao chúng ta cần mã hóa

    Mã hóa làm rối dữ liệu để nó không thể được hiểu nếu bị nghe lén (bắt giữ) bởi người không mong muốn. Dữ liệu có thể đọc được gọi là dữ liệu rõ; sau khi mã hóa, nó trở thành dữ liệu mã hóa.

    Mã hóa không ngăn chặn dữ liệu bị nghe lén. Nó chỉ ngăn việc dữ liệu bị hiểu.

    Mã hóa đối xứng

    Mã hóa đối xứng sử dụng một khóa duy nhất để vừa mã hóa vừa giải mã dữ liệu. Người gửi và người nhận phải chia sẻ khóa bí mật này. Rủi ro là chính khóa đó có thể bị đánh cắp trong quá trình chia sẻ.

    Mã hóa bất đối xứng

    Mã hóa bất đối xứng sử dụng hai khóa khác nhau:

    • một khóa công khai mà bất cứ ai cũng có thể sở hữu, dùng để mã hóa;
    • một khóa riêng tư được giữ kín, dùng để giải mã.

    Dữ liệu được mã hóa bằng khóa công khai chỉ có thể được giải mã bằng khóa riêng tư tương ứng, vì vậy khóa không bao giờ cần được chia sẻ. Điều này an toàn hơn so với việc chia sẻ một khóa bí mật duy nhất.

    Mã hóa đối xứng sử dụng một khóa chung cho cả hai bước, và mã hóa bất đối xứng sử dụng khóa công khai để mã hóa và khóa riêng tư để giải mã *Mã hóa đối xứng sử dụng một khóa chung; mã hóa bất đối xứng sử dụng khóa công khai để mã hóa và khóa riêng tư để giải mã

    Explore · ⁨Khám phá⁩

    The Caesar cipher · ⁨Mã Caesar⁩

    Shift each letter to encrypt a message — the simplest idea of a cipher and its key. · ⁨Dịch chuyển mỗi ký tự để mã hóa một thông điệp — ý tưởng đơn giản nhất của một mã hóa và khóa của nó.⁩

    Vocabulary · ⁨Từ vựng⁩ Train · ⁨Luyện tập⁩
    English Tiếng Việt
    encryption/enˈkrɪpʃn/ mã hóa
    intercepted/ˌɪntəˈseptɪd/ bị chặn
    plaintext/ˈpleɪntekst/ văn bản rõ
    ciphertext/ˈsaɪfətekst/ văn bản mã hóa
    symmetric encryption/sɪˈmetrɪk enˈkrɪpʃn/ mã hóa đối xứng
    key/kiː/ key
    asymmetric encryption/ˌeɪsɪˈmetrɪk enˈkrɪpʃn/ mã hóa bất đối xứng
    public key/ˈpʌblɪk kiː/ khóa công khai
    private key/ˈpraɪvət kiː/ khóa riêng tư
    2.3

    Exam tips · ⁨Mẹo làm bài thi⁩

    English
    • 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.
    Tiếng Việt
    • Dữ liệu được gửi dưới dạng gói tin (một phần đầu chứa địa chỉ và số gói tin, phần dữ liệu tải, và phần đuôi). Gói tin có thể đi qua các tuyến đường khác nhau và đến không theo thứ tự, sau đó được sắp xếp lại theo số gói tin.
    • Phân loại các loại truyền: truyền tuần tự (một bit một lúc, tốt cho khoảng cách xa) so với truyền song song (nhiều bit cùng lúc, khoảng cách ngắn); đơn hướng / bán song hướng / song hướng mô tả chiều truyền.
    • Một bit chẵn lẻ đơn lẻ chỉ cho thấy rằng có lỗi; một khối chẵn lẻ xác định chính xác bit sai — hàng và cột đều không thỏa mãn.
    • Học các phương pháp phát hiện lỗi và chức năng của từng cái: kiểm tra tính chẵn lẻ, tổng kiểm tra, kiểm tra phản hồi, ARQ, và digit kiểm tra (cho các số nhập bằng tay).
    • Mã hóa đối xứng sử dụng một khóa chung; mã hóa bất đối xứng sử dụng khóa công khai để mã hóa và khóa riêng tư để giải mã, vì vậy không bao giờ có khóa bí mật nào được chia sẻ.
  • 3

    Hardware · ⁨Phần cứng⁩

    Watch lesson · ⁨Xem bài học⁩
    3.1

    The central processing unit (CPU) · ⁨Bộ xử lý trung tâm (CPU)⁩

    Syllabus · ⁨Chương trình⁩
    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
    Tiếng Việt
    Thí sinh cần có thể: Ghi chú và hướng dẫn
    1 (a) Understand the role of the central processing unit (CPU) in a computer • CPU xử lý các lệnh và dữ liệu được nhập vào máy tính để kết quả có thể được xuất ra
    (b) Understand what is meant by a microprocessor • Microprocessor là một loại vi mạch tích hợp trên một chip duy nhất
    2 (a) Hiểu mục đích của các thành phần trong CPU, trong một máy tính có kiến trúc Von Neumann • Bao gồm: – đơn vị: bộ xử lý số học và logic (ALU) và bộ điều khiển (CU) – thanh ghi: bộ đếm chương trình (PC), thanh ghi địa chỉ bộ nhớ (MAR), thanh ghi dữ liệu bộ nhớ (MDR), thanh ghi lệnh hiện tại (CIR) và bộ tích lũy (ACC) – bus: bus địa chỉ, bus dữ liệu và bus điều khiển
    (b) Mô tả quy trình fetch–decode–execute (FDE cycle), bao gồm vai trò của từng thành phần trong quá trình này • Làm thế nào để lấy lệnh và dữ liệu từ bộ nhớ truy cập ngẫu nhiên (RAM) vào CPU, làm thế nào chúng được xử lý bằng cách sử dụng từng thành phần và sau đó được thực thi • Lưu trữ dữ liệu và địa chỉ vào các thanh ghi cụ thể • Sử dụng bus để truyền dữ liệu, địa chỉ và tín hiệu • Sử dụng các đơn vị để lấy, giải mã và thực thi dữ liệu và lệnh
    3 Hiểu ý nghĩa của core, cache và clock trong CPU và giải thích cách chúng có thể ảnh hưởng đến hiệu suất của CPU • Số lượng core, dung lượng cache và tốc độ clock có thể ảnh hưởng đến hiệu suất của CPU
    4 Hiểu mục đích và việc sử dụng instruction set cho CPU • Instruction set là danh sách tất cả các lệnh mà CPU có thể xử lý, và các lệnh này là mã máy
    5 Mô tả mục đích và đặc điểm của embedded system và xác định các thiết bị thường sử dụng chúng • Embedded system được sử dụng để thực hiện các chức năng chuyên biệt. Ví dụ như trong, đồ dùng gia đình, ô tô, hệ thống an ninh, hệ thống chiếu sáng hoặc máy bán hàng tự động. Điều này khác với máy tính đa năng được sử dụng để thực hiện nhiều chức năng khác nhau. Ví dụ như, máy tính cá nhân (PC) hoặc laptop

    Source: Cambridge International syllabus · ⁨Nguồn: Chương trình 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.

    Tiếng Việt
    Chu kỳ lấy - giải mã - thực thi

    Bộ xử lý trung tâm (CPU) là bộ phận của máy tính thực hiện việc xử lý dữ liệu và thực thi lệnh. Nó chạy chương trình bằng cách lặp lại một chu kỳ, hàng triệu lần mỗi giây.

    Một chip máy tính hình vuông với mặt kim loại bóng và tên model được in trên đó
    A central processing unit (CPU): the chip that processes data and runs the instructions

    Các bộ phận của CPU

    Bộ phận Chức năng
    đơn vị tính toán logic (ALU) thực hiện phép tính (cộng, trừ) và các thao tác logic (so sánh)
    đơn vị điều khiển (CU) gửi tín hiệu điều khiển để quản lý tất cả các bộ phận và chỉ thị cho chúng làm gì
    bộ nhớ tạm những bộ lưu trữ rất nhỏ, rất nhanh chứa một đơn vị dữ liệu tại một thời điểm

    Các bộ phận được nối với nhau bởi tuyến bus — các bó dây dẫn truyền thông tin:

    • tuyến địa chỉ mang địa chỉ bộ nhớ (một chiều);
    • tuyến dữ liệu mang dữ liệu và lệnh (hai chiều);
    • tuyến điều khiển mang tín hiệu điều khiển.
    Sơ đồ khối của CPU bao gồm đơn vị điều khiển, ALU và bộ nhớ tạm, được nối với bộ nhớ chính qua tuyến địa chỉ, tuyến dữ liệu và tuyến điều khiển
    The CPU holds the control unit, the ALU and the registers; three buses link it to main memory

    Các bộ nhớ tạm đặc biệt

    These registers are used during the fetch–execute cycle.

    Bộ nhớ tạm Mục đích
    bộ đếm chương trình (PC) giữ địa chỉ của lệnh tiếp theo
    bộ nhớ địa chỉ bộ nhớ (MAR) giữ địa chỉ để đọc từ hoặc ghi vào
    bộ nhớ dữ liệu bộ nhớ (MDR) giữ dữ liệu hoặc lệnh vừa được lấy ra
    bộ nhớ lệnh hiện tại (CIR) giữ lệnh đang được thực thi
    bộ cộng (ACC) giữ kết quả của các phép tính do ALU thực hiện

    Chu kỳ lấy-lệnh-thực thi

    The fetch–execute cycle has three stages, repeated again and again:

    1. Lấy lệnh — lệnh được sao chép từ bộ nhớ vào CPU (sử dụng PC, MAR và MDR). Sau đó PC tăng lên 1.
    2. Giải mã — đơn vị điều khiển xác định ý nghĩa của lệnh.
    3. Thực thi — lệnh được thực thi (ALU có thể thực hiện phép tính, với kết quả gửi đến bộ cộng).
    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

    Bộ nhớ đệm

    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.

    Những yếu tố ảnh hưởng đến hiệu suất CPU

    Tính năng Tác động
    số lượng lõi mỗi lõi có thể chạy lệnh độc lập, nên nhiều lõi hơn có thể thực hiện nhiều công việc hơn cùng lúc
    dung lượng cache cache lớn hơn chứa nhiều dữ liệu sẵn sàng cho CPU, nên nó phải chờ ít hơn
    tốc độ xung nhịp số chu kỳ mỗi giây; tốc độ xung nhịp cao hơn chạy nhiều lệnh hơn mỗi giây

    Ví dụ minh họa. Hai chiếc máy tính giống hệt nhau ngoại trừ việc A có CPU đơn lõi tốc độ 3.0 GHz với 2 MB cache, và B có CPU bốn lõi tốc độ 2.4 GHz với 8 MB cache. Máy nào tốt hơn cho việc chỉnh sửa video và tại sao? Chỉnh sửa video chia thành nhiều tác vụ có thể chạy đồng thời, vì vậy bốn lõi của B có thể xử lý nhiều luồng song song trong khi A chỉ có thể làm việc trên một luồng tại một thời điểm. Cache lớn hơn của B cũng giữ nhiều dữ liệu thường dùng gần CPU hơn, nên nó phải lấy từ RAM ít thường xuyên hơn. B là lựa chọn tốt hơn, mặc dù A có tốc độ xung nhịp cao hơn. Không bao giờ trả lời chỉ dựa vào tốc độ xung nhịp: hãy cân nhắc lõi, cache và tốc độ xung nhịp cùng nhau, và liên hệ từng yếu tố với công việc đang thực hiện.

    Hệ thống nhúng

    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 · ⁨Khám phá⁩

    The fetch-execute cycle · ⁨Chu kỳ lấy lệnh-thực thi⁩

    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. · ⁨Vận hành vòng lặp mà CPU lặp lại hàng tỷ lần mỗi giây — lấy lệnh, giải mã ý nghĩa của nó, thực thi, rồi làm tất cả lại từ đầu.⁩

    Vocabulary · ⁨Từ vựng⁩ Train · ⁨Luyện tập⁩
    English Tiếng Việt
    central processing unit/ˈsentrəl ˈprəʊsesɪŋ ˈjuːnɪt/ bộ xử lý trung tâm
    instructions/ɪnˈstrʌkʃnz/ lệnh
    arithmetic logic unit/əˈrɪθmətɪk ˈlɒdʒɪk ˈjuːnɪt/ bộ phận thực hiện phép toán và logic
    control unit/kənˈtrəʊl ˈjuːnɪt/ đơn vị điều khiển
    registers/ˈredʒɪstəz/ thanh ghi
    buses/ˈbʌsɪz/ bus
    address bus/əˈdres bʌs/ bus địa chỉ
    data bus/ˈdeɪtə bʌs/ bus dữ liệu
    control bus/kənˈtrəʊl bʌs/ bus điều khiển
    program counter/ˈprəʊɡræm ˈkaʊntə/ bộ đếm chương trình
    memory address register/ˈmeməri əˈdres ˈredʒɪstə/ bộ nhớ địa chỉ
    memory data register/ˈmeməri ˈdeɪtə ˈredʒɪstə/ bộ nhớ dữ liệu
    current instruction register/ˈkʌrənt ɪnˈstrʌkʃn ˈredʒɪstə/ bộ nhớ lệnh hiện tại
    fetch–execute cycle/fetʃ ˈeksɪkjuːt ˈsaɪkl/ chu kỳ lấy – thực thi
    Cache/kæʃ/ Bộ nhớ đệm
    cores/kɔːz/ lõi xử lý
    clock speed/klɒk spiːd/ tốc độ xung nhịp
    embedded system/emˈbedɪd ˈsɪstəm/ hệ nhúng
    memory/ˈmeməri/ nhớ
    Watch lesson · ⁨Xem bài học⁩
    3.2

    Input devices · ⁨Thiết bị đầu vào⁩

    Syllabus · ⁨Chương trình⁩
    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
    Tiếng Việt
    Thí sinh cần có thể: Ghi chú và hướng dẫn
    1 Hiểu ý nghĩa của thiết bị đầu vào và lý do cần thiết • Bao gồm: – máy quét mã vạch – máy ảnh kỹ thuật số – bàn phím – micro – chuột quang – máy quét mã QR – màn hình cảm ứng (dạng điện trở, điện dung và hồng ngoại) – máy quét hai chiều (2D) và ba chiều (3D)
    2 Hiểu ý nghĩa của thiết bị đầu ra và lý do cần thiết • Bao gồm: – cơ cấu chấp hành (actuator) – máy chiếu DLP (Digital Light Processing) – máy in phun – máy in laser – màn hình LED (Light Emitting Diode) – máy chiếu LCD (Liquid Crystal Display) – màn hình LCD – loa – máy in 3D
    3 (a) Hiểu ý nghĩa của cảm biến và mục đích của cảm biến • Giới hạn ở: – âm thanh – gia tốc kế – lưu lượng – khí – độ ẩm – hồng ngoại – mức – ánh sáng – từ trường – độ ẩm – pH – áp suất – gần – nhiệt độ
    (b) Xác định loại dữ liệu được thu thập bởi mỗi cảm biến và hiểu khi nào nên sử dụng mỗi cảm biến, bao gồm việc chọn cảm biến phù hợp nhất cho một ngữ cảnh cụ thể

    Source: Cambridge International syllabus · ⁨Nguồn: Chương trình 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.
    Tiếng Việt

    An input device sends data into the computer.

    Thiết bị Cách hoạt động
    máy quét mã vạch chiếu ánh sáng vào các thanh và đọc mẫu phản xạ trở lại
    máy quét mã QR camera đọc mẫu hình vuông gồm các khối đen-trắng
    bàn phím nhấn phím sẽ gửi mã cho ký tự đó
    chuột quang một tia sáng và cảm biến theo dõi chuyển động trên bề mặt
    micro chuyển sóng âm thành tín hiệu điện
    máy ảnh kỹ thuật số ống kính hội tụ ánh sáng lên cảm biến ghi lại các pixel
    cảm biến đo đại lượng vật lý (như nhiệt độ hoặc ánh sáng) và gửi nó dưới dạng dữ liệu
    màn hình cảm ứng phát hiện nơi ngón tay chạm vào màn hình
    A close-up of a black computer keyboard with the QWERTY letter keys
    Một bàn phím: mỗi lần nhấn phím sẽ gửi mã cho ký tự đó
    A white optical mouse on a desk, with the optical light glowing underneath
    Chuột quang: một tia sáng và cảm biến theo dõi chuyển động của nó trên bàn làm việc
    A flat white box-shaped scanner with a closed lid that lifts up to scan a page
    Máy quét mặt phẳng: nó chiếu sáng qua trang giấy để sao chép vào máy tính
    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
    A front view of a small red digital camera, showing its lens and flash
    Máy ảnh kỹ thuật số: ống kính hội tụ ánh sáng vào cảm biến ghi lại các điểm ảnh
    A handheld microphone with a rounded metal mesh head
    A microphone turns sound waves into an electrical signal
    Cảm biến nhiệt độ nhỏ màu xanh và đen trên một bo mạch điện tử nhỏ với ba chân tiếp xúc
    Cảm biến đo một đại lượng vật lý (ở đây là nhiệt độ) và gửi nó dưới dạng dữ liệu

    Màn hình cảm ứng có thể hoạt động theo ba cách:

    • cảm biến điện trở — hai lớp được nhấn vào nhau tại điểm bạn chạm;
    • cảm biến điện dung — nó cảm nhận điện tích nhỏ của ngón tay bạn;
    • hồng ngoại — ngón tay bạn phá vỡ một lưới các tia sáng.
    Ngón tay đang chạm vào màn hình điện thoại thông minh để cuộn trang
    Màn hình cảm ứng xác định vị trí ngón tay bạn chạm vào đó
    Explore · ⁨Khám phá⁩

    Device and storage lab · ⁨Phòng thí nghiệm thiết bị và lưu trữ⁩

    Classify computing examples by what job they do in a system. · ⁨Phân loại các ví dụ về máy tính dựa trên công việc chúng thực hiện trong hệ thống.⁩

    Vocabulary · ⁨Từ vựng⁩ Train · ⁨Luyện tập⁩
    English Tiếng Việt
    barcode scanner/ˈbɑːkəʊd ˈskænə/ máy quét mã vạch
    QR code scanner/ˌkjuː ˈɑː kəʊd ˈskænə/ máy quét mã QR
    sensors/ˈsensəz/ cảm biến
    touch screen/tʌtʃ skriːn/ màn hình cảm ứng
    resistive/rɪˈzɪstɪv/ điện trở
    capacitive/kəˈpæsɪtɪv/ dung kháng
    infrared/ˌɪnfrəˈred/ tia hồng ngoại
    optical mouse/ˈɒptɪkl maʊs/ chuột quang
    media access control/ˈmiːdiːə ˈækses kənˈtrəʊl/ truy cập phương tiện
    internet protocol/ˈɪntənet ˈprəʊtəkɒl/ giao thức internet
    3.2

    Output devices · ⁨Thiết bị đầu ra⁩

    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
    Tiếng Việt

    Thiết bị đầu ra gửi dữ liệu ra khỏi máy tính đến người dùng.

    Thiết bị Cách hoạt động
    Bộ chấp hành chuyển tín hiệu điện thành chuyển động (ví dụ: động cơ hoặc van)
    Màn hình LCD/LED hiển thị hình ảnh bằng một lưới các chấm màu nhỏ li ti
    Máy chiếu chiếu một hình ảnh phóng to lên tường hoặc màn
    Máy in phun mực phun những giọt mực nhỏ lên giấy
    Máy in laser sử dụng tia laser và bột mực (toner) được cố định lên giấy bằng nhiệt
    Máy in 3D xây dựng một vật thể rắn từng lớp một
    Loa chuyển tín hiệu điện thành âm thanh
    Máy in phun mực để bàn với khay giấy mở ở phía trên
    Máy in phun tước những giọt mực nhỏ lên giấy
    Máy in laser để bàn màu trắng-xám với các khay giấy gập ra
    Máy in laser sử dụng tia laser và bột mực (toner) được cố định lên giấy bằng nhiệt
    Máy in 3D: khung kim loại màu đen giữ giường in phẳng và đầu in di chuyển
    Máy in 3D xây dựng một vật thể rắn từng lớp một
    Màn hình máy tính phẳng rộng đặt trên chân đế tròn
    Màn hình LCD/LED hiển thị hình ảnh bằng một lưới các chấm màu nhỏ li ti
    Một cặp loa máy tính nhỏ màu đen trên bàn làm việc
    Loa chuyển tín hiệu điện thành âm thanh
    Một cặp tai nghe chụp tai màu xanh dương
    Tai nghe chuyển tín hiệu điện thành âm thanh cho một người nghe
    Nhiều động cơ điện có kích thước khác nhau cạnh một pin 9-volt để làm tỷ lệ so sánh
    Một bộ chấp hành như động cơ chuyển tín hiệu điện thành chuyển động
    Vocabulary · ⁨Từ vựng⁩ Train · ⁨Luyện tập⁩
    English Tiếng Việt
    actuator/ˈæktʃuːeɪtə/ cơ cấu tác động
    projector/prəˈdʒektə/ máy chiếu
    inkjet printer/ɪŋkˈdʒet ˈprɪntə/ máy in phun mực
    laser printer/ˈleɪzə ˈprɪntə/ máy in laser
    speaker/ˈspiːkə/ loa
    Primary storage/ˈpraɪməri ˈstɔːrɪdʒ/ Bộ lưu trữ sơ cấp
    random access memory/ˈrændəm ˈækses ˈmeməri/ b bộ nhớ truy cập ngẫu nhiên
    read only memory/riːd ˈəʊnli ˈmeməri/ b bộ nhớ chỉ đọc
    volatile/ˈvɒlətaɪl/ thay đổi khi mất nguồn
    non-volatile/nɒn ˈvɒlətaɪl/ phi thay đổi khi mất nguồn
    Secondary storage/ˈsekəndəri ˈstɔːrɪdʒ/ Bộ nhớ phụ
    magnetic storage/mæɡˈnetɪk ˈstɔːrɪdʒ/ b bộ nhớ từ
    optical storage/ˈɒptɪkl ˈstɔːrɪdʒ/ b bộ nhớ quang
    solid state storage/ˈsɒlɪd steɪt ˈstɔːrɪdʒ/ b bộ nhớ thể rắn
    flash memory/flæʃ ˈmeməri/ b bộ nhớ flash
    3.3

    Primary storage: RAM and ROM · ⁨Bộ nhớ chính: RAM và ROM⁩

    Syllabus · ⁨Chương trình⁩
    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
    Tiếng Việt
    Thí sinh cần có thể: Ghi chú và hướng dẫn
    1 Hiểu ý nghĩa của bộ nhớ chính • Bộ nhớ chính được truy cập trực tiếp bởi CPU • Bao gồm vai trò của: – bộ nhớ truy cập ngẫu nhiên (RAM) – bộ nhớ chỉ đọc (ROM) • Bao gồm lý do máy tính cần cả RAM và ROM, và sự khác biệt giữa chúng
    2 Hiểu ý nghĩa của bộ nhớ thứ cấp • Bộ nhớ thứ cấp không được truy cập trực tiếp bởi CPU và cần thiết để lưu trữ dữ liệu lâu dài hơn
    3 Mô tả hoạt động của bộ nhớ từ tính, quang học và rắn (b bộ nhớ flash) và đưa ra ví dụ về mỗi loại • Bộ nhớ từ tính sử dụng đĩa quay, được chia thành các đường dẫn và sector. Dữ liệu được đọc và ghi bằng nam châm điện. Bao gồm ổ cứng (HDD) • Bộ nhớ quang học sử dụng tia laser để tạo và đọc các hố và vùng phẳng. Bao gồm: CD, DVD và Blu-ray • Bộ nhớ rắn (flash memory) sử dụng công nghệ NAND hoặc NOR. Transistor được sử dụng làm cổng điều khiển và cổng nổi. Bao gồm: SSD (Solid-State Drive), thẻ SD và USB drive
    4 Mô tả ý nghĩa của virtual memory, cách nó được tạo ra và sử dụng, và tại sao nó cần thiết • Các trang dữ liệu được chuyển giữa RAM và bộ nhớ ảo khi cần thiết
    5 Hiểu ý nghĩa của lưu trữ đám mây • Lưu trữ đám mây có thể truy cập từ xa so với việc lưu trữ dữ liệu cục bộ
    6 Giải thích ưu điểm và nhược điểm của việc lưu trữ dữ liệu trên đám mây so với việc lưu trữ cục bộ • Cần máy chủ vật lý và thiết bị lưu trữ để lưu trữ dữ liệu trong đám mây

    Source: Cambridge International syllabus · ⁨Nguồn: Chương trình 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.

    Tiếng Việt

    Bộ nhớ chính là bộ nhớ mà CPU có thể truy cập trực tiếp. Có hai loại.

    RAM: dễ mất, có thể thay đổi, chứa chương trình đang chạy. ROM: khó mất, không thể thay đổi, chứa chỉ dẫn khởi động
    RAM là dễ mất và chứa chương trình đang chạy; ROM là khó mất và chỉ đọc được
    RAM ROM
    Tên đầy đủ bộ nhớ truy cập ngẫu nhiên bộ nhớ chỉ đọc
    Đọc/ghi đọc và ghi chỉ đọc
    Giữ dữ liệu khi mất điện? không — nó là dễ mất có — nó là khó mất
    Chứa chương trình và dữ liệu đang sử dụng ngay lúc này chỉ dẫn khởi động (cách khởi máy tính)

    Cả hai đều cần thiết: ROM nói cho máy tính cách khởi động, sau đó RAM chứa các chương trình bạn đang chạy.

    Một thanh mạch điện tử dài mỏng màu xanh lá cây mang các hàng chip nhớ nhỏ màu đen và đầu nối vàng ở mép
    Một thanh RAM (bộ nhớ truy cập ngẫu nhiên): nó chứa các chương trình và dữ liệu đang sử dụng ngay lúc này
    3.3

    Secondary storage · ⁨Bộ nhớ phụ⁩

    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
    Tiếng Việt

    Bộ nhớ phụ lưu trữ dữ liệu vĩnh viễn, ngay cả khi mất điện. Nó là khó mất và được sử dụng để lưu trữ lâu dài. Có ba loại.

    Loại Cách lưu trữ dữ liệu Ví dụ
    bộ nhớ từ dữ liệu được lưu dưới dạng các điểm từ hóa trên đĩa quay ổ cứng (HDD), băng từ
    bộ nhớ quang dữ liệu được lưu dưới dạng các dấu hiệu đọc bằng tia laser CD, DVD, Blu-ray
    bộ nhớ thể rắn dữ liệu được lưu trong bộ nhớ flash, không có bộ phận chuyển động SSD, USB flash drive, thẻ nhớ
    Bên trong một ổ cứng đã mở, hiển thị đĩa tròn màu bạc (platter) và cánh đọc/ghi resting trên đó
    Bên trong ổ cứng (HDD): đĩa sáng quay và đầu đọc dữ liệu từ tính
    Bốn cartridge băng từ hình vuông, mỗi cái chứa một cuộn băng từ mỏng
    Băng từ lưu trữ dữ liệu trên một dải từ dài; nó rẻ tiền cho các bản sao lưu lớn
    Một đĩa tròn bóng phản chiếu màu cầu vồng từ bề mặt dữ liệu của nó
    Đĩa quang như CD hoặc DVD: tia laser đọc các dấu hiệu trên bề mặt bóng của nó
    Ổ SSD Samsung 2.5 inch, một hộp kim loại phẳng màu xám không có bộ phận chuyển động nào nhìn thấy được
    Ổ thể rắn (SSD) lưu trữ dữ liệu trong các chip bộ nhớ flash và không có bộ phận chuyển động
    Một chiếc USB nhỏ màu trắng có vòng khóa nắp màu đỏ, được dán nhãn 32 GB
    Ổ USB flash lưu trữ dữ liệu trong bộ nhớ flash và không có bộ phận chuyển động
    Một kim tự tháp với các thanh ghi ở trên cùng, sau đó là bộ nhớ đệm, rồi đến RAM, và cuối cùng là bộ nhớ phụ ở đáy, với mũi tên từ nhanh-nhỏ sang chậm-lớn
    Bộ nhớ tạo thành một hệ phân cấp: các thanh ghi và bộ nhớ đệm nhanh nhất nhưng nhỏ nhất; bộ nhớ phụ chậm nhất nhưng lớn nhất
    Explore · ⁨Khám phá⁩

    Device and storage lab · ⁨Phòng thí nghiệm thiết bị và lưu trữ⁩

    Classify computing examples by what job they do in a system. · ⁨Phân loại các ví dụ về máy tính dựa trên công việc chúng thực hiện trong hệ thống.⁩

    3.3

    Virtual memory · ⁨Bộ nhớ ảo⁩

    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.

    Tiếng Việt

    Khi RAM đầy, máy tính có thể sử dụng một phần bộ nhớ phụ như một RAM giả, thêm. Điều này được gọi là bộ nhớ ảo.

    Dữ liệu không cần thiết ngay lập tức được di chuyển khỏi RAM lên đĩa, giải phóng không gian trong RAM cho các chương trình khác. Điều này cho phép bạn chạy nhiều chương trình hơn so với RAM đơn thuần có thể chứa. Nó chậm hơn, vì bộ nhớ phụ chậm hơn nhiều so với RAM.

    RAM chứa hai chương trình đang hoạt động và một khe trống, với mũi tên di chuyển một chương trình không sử dụng ra đĩa
    Khi RAM đầy, dữ liệu không sử dụng được di chuyển lên đĩa để giải phóng RAM — chậm hơn, nhưng cho phép chạy nhiều chương trình hơn
    Vocabulary · ⁨Từ vựng⁩ Train · ⁨Luyện tập⁩
    English Tiếng Việt
    virtual memory/ˈvɜːtʃuːəl ˈmeməri/ bộ nhớ ảo
    Cloud storage/klaʊd ˈstɔːrɪdʒ/ Lưu trữ đám mây
    network interface card/ˈnetwɜːk ˈɪntəfeɪs kɑːd/ card giao tiếp mạng
    static/ˈstætɪk/ bất biến
    dynamic/daɪˈnæmɪk/ động
    3.3

    Cloud storage · ⁨Lưu trữ đám mây⁩

    Syllabus · ⁨Chương trình⁩
    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
    Tiếng Việt
    Thí sinh cần có thể: Ghi chú và hướng dẫn
    1 Hiểu ý nghĩa của bộ nhớ chính • Bộ nhớ chính được truy cập trực tiếp bởi CPU • Bao gồm vai trò của: – bộ nhớ truy cập ngẫu nhiên (RAM) – bộ nhớ chỉ đọc (ROM) • Bao gồm lý do máy tính cần cả RAM và ROM, và sự khác biệt giữa chúng
    2 Hiểu ý nghĩa của bộ nhớ thứ cấp • Bộ nhớ thứ cấp không được truy cập trực tiếp bởi CPU và cần thiết để lưu trữ dữ liệu lâu dài hơn
    3 Mô tả hoạt động của bộ nhớ từ tính, quang học và rắn (b bộ nhớ flash) và đưa ra ví dụ về mỗi loại • Bộ nhớ từ tính sử dụng đĩa quay, được chia thành các đường dẫn và sector. Dữ liệu được đọc và ghi bằng nam châm điện. Bao gồm ổ cứng (HDD) • Bộ nhớ quang học sử dụng tia laser để tạo và đọc các hố và vùng phẳng. Bao gồm: CD, DVD và Blu-ray • Bộ nhớ rắn (flash memory) sử dụng công nghệ NAND hoặc NOR. Transistor được sử dụng làm cổng điều khiển và cổng nổi. Bao gồm: SSD (Solid-State Drive), thẻ SD và USB drive
    4 Mô tả ý nghĩa của virtual memory, cách nó được tạo ra và sử dụng, và tại sao nó cần thiết • Các trang dữ liệu được chuyển giữa RAM và bộ nhớ ảo khi cần thiết
    5 Hiểu ý nghĩa của lưu trữ đám mây • Lưu trữ đám mây có thể truy cập từ xa so với việc lưu trữ dữ liệu cục bộ
    6 Giải thích ưu điểm và nhược điểm của việc lưu trữ dữ liệu trên đám mây so với việc lưu trữ cục bộ • Cần máy chủ vật lý và thiết bị lưu trữ để lưu trữ dữ liệu trong đám mây

    Source: Cambridge International syllabus · ⁨Nguồn: Chương trình 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.
    Tiếng Việt

    Lưu trữ đám mây giữ dữ liệu của bạn trên các máy chủ vật lý từ xa, truy cập qua internet, thay vì trên thiết bị của bạn.

    • Ưu điểm: truy cập từ bất kỳ đâu trên bất kỳ thiết bị nào; không cần mua hoặc bảo trì phần cứng lưu trữ cục bộ; dễ dàng chia sẻ tệp và sao lưu tự động.
    • Nhược điểm: cần kết nối internet hoạt động; chi phí đăng ký liên tục; bảo mật và quyền riêng tư phụ thuộc vào nhà cung cấp; bạn phụ thuộc vào nhà cung cấp đó duy trì sự sẵn có và hoạt động kinh doanh.
    Các机架 máy chủ trung tâm dữ liệu: lưu trữ đám mây giữ tệp của bạn trên các máy chủ từ xa mà bạn truy cập qua mạng
    Máy chủ trong trung tâm dữ liệu: lưu trữ đám mây giữ tập tin của bạn trên các máy chủ từ xa mà bạn truy cập qua mạng
    3.4

    Network hardware · ⁨Phần cứng mạng⁩

    Syllabus · ⁨Chương trình⁩
    English
    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
    Tiếng Việt
    Thí sinh cần có thể: Ghi chú và hướng dẫn
    1 Hiểu rằng máy tính cần một thẻ giao diện mạng (NIC) để truy cập mạng
    2 Hiểu ý nghĩa, và mục đích của địa chỉ MAC (Media Access Control), bao gồm cấu trúc của nó • Thẻ giao diện mạng được gán địa chỉ MAC tại thời điểm sản xuất • Địa chỉ MAC thường được viết dưới dạng hexadecimal • Địa chỉ MAC được tạo ra bằng cách sử dụng mã nhà sản xuất và mã serial
    3 (a) Hiểu ý nghĩa, và mục đích của địa chỉ IP (Internet Protocol Address) (b) Hiểu rằng có các loại địa chỉ IP khác nhau • Địa chỉ IP được phân bổ bởi mạng và có thể là tĩnh hoặc động • Bao gồm đặc điểm, và sự khác biệt giữa IPv4 và IPv6
    4 Mô tả vai trò của router trong mạng • Router gửi dữ liệu đến một đích cụ thể trong mạng • Router có thể gán địa chỉ IP • Router có thể kết nối mạng nội bộ với internet

    Source: Cambridge International syllabus · ⁨Nguồn: Chương trình 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.

    Tiếng Việt

    Card giao tiếp mạng (NIC)

    Một card giao tiếp mạng (NIC) là phần cứng cho phép một thiết bị kết nối vào mạng và gửi, nhận dữ liệu. Mỗi NIC đều có sẵn địa chỉ MAC.

    Địa chỉ MAC và địa chỉ IP

    • Một địa chỉ MAC (địa chỉ kiểm soát truy cập phương tiện) là một số định danh một thiết bị vật lý. Nhà sản xuất thiết lập nó, và nó thường không thay đổi. Nó được viết theo hệ thập phân.
    • Một địa chỉ IP (địa chỉ giao thức internet) là một số định danh một thiết bị trên mạng. Nó do mạng cấp và có thể thay đổi.

    Vì vậy, địa chỉ MAC đi kèm với thiết bị, trong khi địa chỉ IP phụ thuộc vào mạng mà thiết bị đang sử dụng.

    Có hai phiên bản của địa chỉ IP. IPv4 là 32-bit, được viết dưới dạng bốn số thập phân 0–255 (ví dụ 192.168.0.1); IPv6 mới hơn là 128-bit, được viết dưới dạng tám nhóm số thập lục phân cách nhau bởi dấu hai chấm, tạo ra rất nhiều địa chỉ hơn. Một địa chỉ cũng có thể là tĩnh (cố định, được thiết lập bằng tay và không bao giờ thay đổi) hoặc động (do bộ phát sóng/mạng cấp mỗi lần thiết bị kết nối, nên có thể thay đổi).

    Bộ phát sóng

    Một bộ phát sóng kết nối các mạng khác nhau lại với nhau — ví dụ, mạng gia đình của bạn với internet. Nó đọc địa chỉ IP trong từng gói tin và chuyển hướng nó đến đúng mạng.

    Bộ phát sóng Wi-Fi: phần cứng mạng chuyển tiếp các gói tin giữa các thiết bị và Internet rộng lớn
    Bộ phát sóng Wi-Fi: phần cứng mạng chuyển tiếp các gói tin giữa các thiết bị và Internet rộng lớn
    Explore · ⁨Khám phá⁩

    Network route lab · ⁨Phòng thí nghiệm định tuyến mạng⁩

    Follow data from a device through network hardware and protocols. · ⁨Theo dõi dữ liệu từ một thiết bị qua phần cứng mạng và giao thức.⁩

    Vocabulary · ⁨Từ vựng⁩ Train · ⁨Luyện tập⁩
    English Tiếng Việt
    router/ˈruːtə/ router
    fetch-execute cycle/fetʃ ˈeksɪkjuːt ˈsaɪkl/ chu kỳ lấy – thực thi
    3.4

    Exam tips · ⁨Mẹo làm bài thi⁩

    English
    • 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.
    Tiếng Việt
    • Học chu trình lấy – giải mã – thực thi và các thanh ghi đặc biệt: bộ đếm chương trình giữ địa chỉ của thủ tục tiếp theo, MAR/MDR mang địa chỉ/dữ liệu, và ** Accumulator** giữ kết quả của ALU.
    • Hiệu suất CPU cải thiện với nhiều lõi hơn, b bộ nhớ đệm lớn hơn và tốc độ xung nhịp cao hơn.
    • RAM là bộ nhớ dễ mất (nó mất dữ liệu khi không có nguồn điện) và chứa các chương trình đang chạy; ROM là bộ nhớ khó mất và chỉ đọc (các thủ tục khởi động).
    • Nối các loại bộ nhớ thứ cấp: từ tính (HDD, băng từ), quang (CD/DVD, đọc bằng tia laser), rắn (SSD, USB, flash — không có bộ phận chuyển động).
    • Một địa chỉ MAC định danh thiết bị vật lý và thường không thay đổi; một địa chỉ IP do mạng cấp và có thể thay đổi.
    Vocabulary · ⁨Từ vựng⁩ Train · ⁨Luyện tập⁩
    English Tiếng Việt
    accumulator/əˈkjuːmjʊleɪtə/ bộ cộng gộp
  • 4

    Software · ⁨Phần mềm⁩

    Watch lesson · ⁨Xem bài học⁩
    4.1

    Hardware and software · ⁨Phần cứng và phần mềm⁩

    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.

    Tiếng Việt

    Một hệ thống máy tính được cấu thành từ hai bộ phận hoạt động cùng nhau.

    Phần cứng là các bộ phận vật lý (CPU, bàn phím); phần mềm là các chương trình (ứng dụng, hệ điều hành)
    Phần cứng là các bộ phận vật lý; phần mềm là các chương trình
    • Phần cứng là các bộ phận vật lý của máy tính — những bộ phận bạn có thể chạm vào. Ví dụ: CPU, bộ nhớ, bàn phím, màn hình và ổ cứng.
    • Phần mềm là các chương trình điều khiển máy tính và bảo cho phần cứng biết phải làm gì.

    Phần cứng không thể làm bất cứ điều gì hữu ích nếu độc lập. Phần mềm cần phần cứng để vận hành. Cả hai đều cần thiết.

    Bo mạch chủ máy tính với các chip, khe cắm và cổng kết nối
    Bo mạch chủ và các bộ phận gắn liền với nó là phần cứng — các bộ phận vật lý bạn có thể chạm vào
    Hệ điều hành trên máy tính để bàn hiển thị trên màn hình
    Hệ điều hành là phần mềm — các chương trình bảo cho phần cứng biết phải làm gì
    Vocabulary · ⁨Từ vựng⁩ Train · ⁨Luyện tập⁩
    English Tiếng Việt
    Hardware/ˈhɑːdweə/ Phần cứng
    physical/ˈfɪzɪkl/ vật lý
    Software/ˈsɒftweə/ Phần mềm
    programs/ˈprəʊɡræmz/ chương trình
    4.1

    Types of software · ⁨Các loại phần mềm⁩

    Syllabus · ⁨Chương trình⁩
    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
    Tiếng Việt
    Thí sinh cần có thể: Ghi chú và hướng dẫn
    1 Mô tả sự khác biệt giữa phần mềm hệ thống và phần mềm ứng dụng và đưa ra ví dụ về mỗi loại • Phần mềm hệ thống cung cấp các dịch vụ mà máy tính yêu cầu, bao gồm hệ điều hành và phần mềm tiện ích • Phần mềm ứng dụng cung cấp các dịch vụ mà người dùng yêu cầu
    2 Mô tả vai trò và các chức năng cơ bản của hệ điều hành • Bao gồm: – quản lý tập tin – xử lý ngắt – cung cấp giao diện – quản lý thiết bị ngoại vi và trình điều khiển – quản lý bộ nhớ – quản lý đa tác vụ – cung cấp nền tảng để chạy ứng dụng – cung cấp bảo mật hệ thống – quản lý tài khoản người dùng
    3 Hiểu cách phần cứng, firmware và hệ điều hành cần thiết để chạy phần mềm ứng dụng • Ứng dụng được chạy trên hệ điều hành • Hệ điều hành được chạy trên firmware • Bộ khởi động (firmware) được chạy trên phần cứng
    4 Mô tả vai trò và hoạt động của ngắt • Bao gồm: – cách ngắt được tạo ra – cách xử lý ngắt bằng một thủ tục phục vụ ngắt (ISR) – những gì xảy ra như một kết quả của các ngắt • Ngắt phần mềm bao gồm chia cho số không và hai tiến trình cố gắng truy cập cùng một vị trí bộ nhớ • Ngắt phần cứng bao gồm nhấn phím trên bàn phím và di chuyển chuột

    Source: Cambridge International syllabus · ⁨Nguồn: Chương trình 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
    Tiếng Việt

    Phần mềm được chia thành hai loại.

    Cây phân nhánh phần mềm thành phần mềm hệ thống (hệ điều hành, tiện ích, driver, trình biên dịch) và phần mềm ứng dụng (soạn thảo văn bản, bảng tính, cơ sở dữ liệu, trình duyệt)
    Phần mềm chia thành phần mềm hệ thống (vận hành máy tính) và phần mềm ứng dụng (cho phép người dùng thực hiện một tác vụ)

    Phần mềm hệ thống

    Phần mềm hệ thống điều khiển chính máy tính và cung cấp nền tảng cho các chương trình khác chạy trên đó. Ví dụ:

    • hệ điều hành (xem bên dưới);
    • trình biên dịch và trình liên kết (công cụ biến các chương trình thành dạng mà máy tính có thể chạy);
    • driver thiết bị — phần mềm cho phép hệ điều hành điều khiển một thiết bị phần cứng;
    • phần mềm tiện ích — các công cụ nhỏ quản lý máy tính (ví dụ: chống virus, sao lưu, dọn dẹp ổ đĩa).

    Bên dưới hệ điều hành nằm firmware – phần mềm được lưu trữ vĩnh viễn trên ROM hoặc flash và chạy ngay khi máy tính được bật. BIOS và bootloader là firmware: chúng kiểm tra phần cứng sau đó tải hệ điều hành. Vì vậy, các lớp xếp chồng lên nhau phần cứng → firmware → hệ điều hành → phần mềm ứng dụng, mỗi lớp chạy trên lớp phía dưới.

    Phần mềm ứng dụng

    Phần mềm ứng dụng cho phép người dùng thực hiện một tác vụ hữu ích. Ví dụ:

    • phần mềm soạn thảo văn bản (viết tài liệu);
    • phần mềm bảng tính (xử lý số liệu trong lưới ô);
    • hệ quản trị cơ sở dữ liệu (lưu trữ và tìm kiếm dữ liệu);
    • trình duyệt web (xem trang web).
    Phần mềm hệ thống Phần mềm ứng dụng
    Công việc vận hành và quản lý máy tính giúp người dùng làm một tác vụ
    Người sử dụng máy tính (ở hậu cảnh) người dùng (trực tiếp)
    Ví dụ hệ điều hành, driver, tiện ích soạn thảo văn bản, trình duyệt, trò chơi
    Vocabulary · ⁨Từ vựng⁩ Train · ⁨Luyện tập⁩
    English Tiếng Việt
    firmware/ˈfɜːmweə/ firmware
    bootloader/ˈbuːtləʊdə/ trình khởi động
    4.1

    The operating system · ⁨Hệ điều hành⁩

    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.
    Tiếng Việt

    Một hệ điều hành (OS) là phần mềm hệ thống chính. Nó điều khiển toàn bộ máy tính và cho phép phần cứng, phần mềm ứng dụng và người dùng làm việc cùng nhau. Không có OS, máy tính sẽ rất khó sử dụng.

    Bốn lớp xếp chồng lên nhau — người dùng ở trên cùng, sau đó là phần mềm ứng dụng, rồi hệ điều hành, và phần cứng ở đáy
    Hệ điều hành nằm giữa phần cứng và phần mềm ứng dụng cũng như người dùng, cho phép họ làm việc cùng nhau

    OS có nhiều vai trò:

    • quản lý tệp — lưu, mở, đặt tên, di chuyển và xóa tệp;
    • xử lý ngắt (xem bên dưới)
    • cung cấp giao diện người dùng để người dùng có thể điều khiển máy tính;
    • quản lý bộ nhớ — quyết định những gì được giữ trong RAM và ở đâu;
    • quản lý thiết bị ngoại vi và trình điều khiển của chúng — kiểm soát các thiết bị như máy in;
    • quản lý đa tác vụ — cho phép nhiều chương trình chạy cùng lúc;
    • cung cấp nền tảng để chạy phần mềm ứng dụng;
    • quản lý bảo mật — tài khoản người dùng, mật khẩu và quyền truy cập.
    4.1

    Interrupts · ⁨Ngắt⁩

    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.

    Tiếng Việt

    Một ngắt (interrupt) là tín hiệu gửi đến bộ xử lý trung tâm (CPU) để báo rằng có việc cần sự chú ý ngay lập tức.

    Ngắt có thể đến từ ba nguồn:

    • phần cứng — ví dụ một phím được nhấn, hoặc máy in hết giấy;
    • phần mềm — ví dụ một chương trình cố gắng chia cho không;
    • người dùng — ví dụ người dùng nhấn phím "hủy".

    Khi ngắt xảy ra, bộ xử lý dừng những gì đang làm, lưu vị trí hiện tại, và xử lý (giải quyết) ngắt. Khi đó xong, nó quay lại việc nó đã làm trước đó. Điều này giúp máy tính phản hồi nhanh với các sự kiện quan trọng.

    Chu kỳ: chương trình chính chạy, sau đó khi có ngắt CPU lưu trạng thái, chạy thủ tục xử lý ngắt, khôi phục trạng thái và tiếp tục
    Khi có ngắt, CPU lưu vị trí, chạy thủ tục xử lý ngắt, sau đó khôi phục vị trí và tiếp tục
    Explore · ⁨Khám phá⁩

    How the CPU handles an interrupt · ⁨Cách CPU xử lý tín hiệu ngắt⁩

    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. · ⁨Từng bước xử lý tín hiệu ngắt. CPU tạm dừng công việc hiện tại, xử lý sự kiện khẩn cấp, sau đó tiếp tục chính xác tại nơi nó đã dừng lại — đây là cách một bộ xử lý quản lý đồng thời bàn phím, máy in và bộ đếm thời gian.⁩

    Vocabulary · ⁨Từ vựng⁩ Train · ⁨Luyện tập⁩
    English Tiếng Việt
    interrupt/ˈɪntərʌpt/ ngắt
    processor/ˈprəʊsesə/ bộ xử lý
    central processing unit/ˈsentrəl ˈprəʊsesɪŋ ˈjuːnɪt/ bộ xử lý trung tâm
    programming language/ˈprəʊɡræmɪŋ ˈlæŋɡwɪdʒ/ ngôn ngữ lập trình
    high-level language/haɪ ˈlevl ˈlæŋɡwɪdʒ/ ngôn ngữ lập trình cấp cao
    low-level language/ləʊ ˈlevl ˈlæŋɡwɪdʒ/ ngôn ngữ cấp thấp
    4.2

    Programming languages · ⁨Ngôn ngữ lập trình⁩

    Syllabus · ⁨Chương trình⁩
    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
    Tiếng Việt
    Thí sinh cần có thể: Ghi chú và hướng dẫn
    1 Giải thích ý nghĩa của ngôn ngữ bậc cao và ngôn ngữ bậc thấp, bao gồm cả ưu điểm và nhược điểm của từng loại • Ưu điểm và nhược điểm bao gồm: – dễ đọc và viết mã, ví dụ: ngôn ngữ bậc thấp khó đọc – dễ gỡ lỗi mã – độc lập với máy – thao tác trực tiếp với phần cứng
    2 Hiểu rằng ngôn ngữ assembly là một dạng ngôn ngữ bậc thấp sử dụng ký hiệu rút gọn, và rằng một trình biên dịch assembly là cần thiết để dịch một chương trình ngôn ngữ assembly thành mã máy
    3 Mô tả hoạt động của trình biên dịch và trình giải thích, bao gồm cách ngôn ngữ bậc cao được dịch bởi từng loại và làm thế nào lỗi được báo cáo • Trình biên dịch dịch toàn bộ mã cùng lúc trước khi thực thi, tạo ra một tệp có thể thực thi • Trình giải thích dịch và thực thi mã dòng theo dòng • Trình biên dịch cung cấp báo cáo lỗi cho toàn bộ mã nếu phát hiện lỗi • Trình giải thích dừng thực thi khi gặp lỗi
    4 Giải thích ưu điểm và nhược điểm của trình biên dịch và trình giải thích • Bao gồm việc hiểu rằng trình giải thích chủ yếu được sử dụng khi đang phát triển chương trình và trình biên dịch được sử dụng để dịch chương trình cuối cùng
    5 Giải thích vai trò của Môi trường Phát triển Tích hợp (IDE) trong việc viết mã chương trình và các chức năng phổ biến mà IDE cung cấp • Bao gồm: – trình soạn thảo mã – môi trường thời gian chạy – công cụ dịch – chẩn đoán lỗi – tự động hoàn thành – tự động sửa lỗi – định dạng đẹp (prettyprint)

    Source: Cambridge International syllabus · ⁨Nguồn: Chương trình 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.

    Tiếng Việt

    Tất cả máy tính xử lý dữ liệu bằng bộ xử lý trung tâm (CPU). Để CPU thực hiện công việc, con người viết chương trình bằng một ngôn ngữ lập trình. Có hai loại.

    Ngôn ngữ cấp cao

    Một ngôn ngữ cấp cao được viết bằng từ ngữ trông giống tiếng Anh (ví dụ Python). Nó:

    • dễ dàng đối với con người đọc, viết và sửa lỗi;
    • độc lập với máy tính — cùng một chương trình có thể chạy trên các loại máy tính khác nhau.

    Ngôn ngữ cấp thấp

    Một ngôn ngữ cấp thấp gần với những gì phần cứng thực tế sử dụng. Bao gồm:

    • mã máy — hướng dẫn được viết dưới dạng nhị phân (0 và 1), mà CPU chạy trực tiếp;
    • ngôn ngữ assembly — mã máy được viết bằng các mã từ ngắn (mnemonics) thay vì nhị phân.

    Ngôn ngữ cấp thấp liên quan đến loại cụ thể của CPU, do đó một chương trình được viết cho một CPU có thể không chạy trên CPU khác. Nó được sử dụng khi lập trình viên cần kiểm soát hoàn toàn phần cứng hoặc cần code rất nhanh, nhỏ gọn.

    Ba lớp chồng lên nhau: ngôn ngữ cấp cao ở trên cùng, sau đó là ngôn ngữ assembly, rồi mã máy ở dưới cùng.
    Ngôn ngữ cấp cao gần với ngôn ngữ con người và chạy trên mọi máy tính; ngôn ngữ cấp thấp (assembly và mã máy) gần với phần cứng và gắn liền với một loại CPU
    Explore · ⁨Khám phá⁩

    Computing concept lab · ⁨Phòng thí nghiệm khái niệm tin học⁩

    Classify concrete examples by the computing idea they demonstrate. · ⁨Phân loại các ví dụ cụ thể theo ý tưởng tin học mà chúng minh họa.⁩

    4.2

    Translators · ⁨Công cụ dịch (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.

    Tiếng Việt

    CPU chỉ có thể chạy mã máy. Một chương trình cấp cao phải được chuyển đổi thành mã máy trước. Phần mềm thực hiện việc này là công cụ dịch. Có ba loại: trình biên dịch và trình thông dịch (cho mã cấp cao), và trìnhIOException (cho mã cấp thấp).

    Trình biên dịch

    Một trình biên dịch dịch toàn bộ chương trình thành mã máy trước khi chạy. Sau khi dịch, mã máy có thể chạy nhiều lần mà không cần dịch lại.

    • quá trình dịch diễn ra một lần, đầy đủ;
    • nó báo tất cả các lỗi cùng lúc, vào cuối quá trình dịch;
    • chương trình hoàn chỉnh chạy nhanh và không cần trình biên dịch phải tồn tại để chạy.

    Trình giải thích

    Một trình thông dịch dịch và chạy chương trình từng dòng một.

    • nó dừng lại ở lỗi đầu tiên tìm thấy, điều này hữu ích khi thử nghiệm;
    • chương trình chạy chậm hơn, vì nó được dịch mỗi lần chạy;
    • trình thông dịch phải có mặt mỗi lần chương trình chạy.
    Trình biên dịch Trình giải thích
    Dịch chuyển toàn bộ chương trình cùng lúc từng dòng một
    Lỗi tất cả được báo cáo ở cuối dừng lại tại lỗi đầu tiên
    Tốc độ chương trình hoàn chỉnh nhanh hơn chậm hơn
    Cần thiết để chạy sau? không có

    Sử dụng trình biên dịch khi bạn muốn chia sẻ một chương trình hoàn chỉnh nhanh. Sử dụng trình thông dịch khi bạn đang viết và thử nghiệm một chương trình và muốn tìm lỗi dễ dàng.

    Assembler

    Một trình biên dịch Assembly dịch một chương trình ngôn ngữ Assembly cấp thấp (viết bằng các ký hiệu ghi nhớ như LDA, ADD) thành mã máy. Mỗi ký hiệu ghi nhớ trở thành một lệnh máy – đây là sự dịch chuyển trực tiếp từng đối một, khác với trình biên dịch hoặc trình giải thích, vốn hoạt động trên mã nguồn cấp cao.

    Trình biên dịch dịch toàn bộ chương trình một lần thành mã máy chạy nhiều lần, so với trình thông dịch dịch và chạy từng dòng một
    Trình biên dịch dịch toàn bộ chương trình một lần thành mã máy; trình thông dịch dịch và chạy từng dòng một

    Ví dụ minh họa. Một nhóm đang viết một chương trình. Trong quá trình phát triển, họ muốn tìm và sửa lỗi nhanh chóng; khi đưa sản phẩm đi, họ muốn khách hàng chạy nó nhanh mà không nhìn thấy mã nguồn. Công cụ dịch nào phù hợp cho mỗi giai đoạn? Trong giai đoạn phát triển, hãy dùng trình thông dịch: nó dịch và chạy từng dòng một và dừng ở lỗi đầu tiên, nên sai sót dễ dàng được xác định. Để xuất bản, hãy dùng trình biên dịch: nó dịch toàn bộ chương trình một lần thành mã máy, sau đó chạy nhanh mà không cần công cụ dịch có mặt, và khách hàng chỉ nhận được file thực thi chứ không phải mã nguồn. Hai công cụ này không phải là đối thủ - hãy nêu giai đoạn và giải thích lý do, vì chỉ nói "trình biên dịch nhanh hơn" sẽ không điểm được.

    Vocabulary · ⁨Từ vựng⁩ Train · ⁨Luyện tập⁩
    English Tiếng Việt
    compiler/kəmˈpaɪlə/ compiler
    linker/ˈlɪŋkə/ trình liên kết
    device driver/dɪˈvaɪs ˈdraɪvə/ trình điều khiển thiết bị
    utility software/juːˈtɪlɪti ˈsɒftweə/ phần mềm tiện ích
    interpreter/ɪnˈtɜːprɪtə/ interpreter
    assembler/əˈsemblə/ assembler
    integrated development environment/ˈɪntɪɡreɪtɪd dɪˈveləpmənt enˈvaɪrənmənt/ môi trường phát triển tích hợp (IDE)
    code editor/kəʊd ˈedɪtə/ trình soạn thảo mã nguồn
    run time environment/rʌn taɪm enˈvaɪrənmənt/ môi trường chạy chương trình
    error diagnostics/ˈerə ˌdaɪəɡˈnɒstɪks/ chẩn đoán lỗi
    auto-completion/ˈɔːtəʊ kəmˈpliːʃn/ tự hoàn tất
    auto-correction/ˈɔːtəʊ kəˈrekʃn/ tự sửa lỗi
    4.2

    Integrated development environment (IDE) · ⁨Môi trường phát triển tích hợp (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.
    Tiếng Việt

    Một môi trường phát triển tích hợp (IDE) là phần mềm giúp bạn viết chương trình. Nó tập hợp nhiều công cụ hữu ích vào một nơi:

    • trình soạn thảo mã — để gõ chương trình của bạn;
    • môi trường thời gian chạy — để chạy chương trình nhằm thử nghiệm;
    • công cụ dịch — trình biên dịch hoặc trình thông dịch để biến mã của bạn thành mã máy;
    • chẩn đoán lỗi — các tin nhắn giúp bạn tìm và hiểu sai lầm;
    • tự động điền và tự động sửa — IDE hoàn thiện hoặc sửa mã khi bạn gõ;
    • prettyprinting — trình bày code gọn gàng với màu sắc và thụt lề để dễ đọc.
    Mã nguồn trong trình soạn thảo: IDE tích hợp trình soạn thảo, trình gỡ lỗi và công cụ chạy trong cùng một nơi
    Mã nguồn trong trình soạn thảo: IDE tích hợp trình soạn thảo, trình gỡ lỗi và công cụ chạy trong cùng một nơi
    Vocabulary · ⁨Từ vựng⁩ Train · ⁨Luyện tập⁩
    English Tiếng Việt
    prettyprinting/ˈpretɪprɪntɪŋ/ trình bày đẹp
    user interface/ˈjuːzə ˈɪntəfeɪs/ giao diện người dùng
    peripherals/pəˈrɪfərəlz/ thiết bị ngoại vi
    multitasking/ˈmʌltitæskɪŋ/ đa nhiệm vụ
    platform/ˈplætfɔːm/ nền tảng
    4.2

    Exam tips · ⁨Mẹo làm bài thi⁩

    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.
    Tiếng Việt
    • Hardware (phần cứng) là các bộ phận vật lý; software (phần mềm) là các chương trình. System software (phần mềm hệ thống) điều khiển máy tính (OS, driver, utility); application software (phần mềm ứng dụng) thực hiện một tác vụ cho người dùng.
    • Một compiler (trình biên dịch) dịch toàn bộ chương trình cùng lúc (chương trình hoàn chỉnh chạy nhanh, và tất cả lỗi được báo cáo ở cuối); một interpreter (trình giải thích) dịch từng dòng (nó dừng lại ở lỗi đầu tiên, chạy chậm hơn, và cần thiết mỗi lần chạy).
    • Các ngôn ngữ High-level (cấp cao) gần giống tiếng Anh và chạy trên mọi máy tính; các ngôn ngữ low-level (cấp thấp) (assembly, machine code) gắn liền với một loại CPU cụ thể.
    • Một interrupt (ngắt) là tín hiệu khiến CPU dừng lại, lưu vị trí của nó, xử lý sự kiện, sau đó tiếp tục từ nơi đã dừng.
    • Học vai trò của hệ điều hành: quản lý tệp, bộ nhớ, thiết bị ngoại vi, đa nhiệm, bảo mật và giao diện người dùng.
    Vocabulary · ⁨Từ vựng⁩ Train · ⁨Luyện tập⁩
    English Tiếng Việt
    System software/ˈsɪstəm ˈsɒftweə/ phần mềm hệ thống
    operating system/ˈɒpəreɪtɪŋ ˈsɪstəm/ hệ điều hành
    Application software/ˌæplɪˈkeɪʃn ˈsɒftweə/ Phần mềm ứng dụng
    word processing/wɜːd ˈprəʊsesɪŋ/ xử lý văn bản
    spreadsheet/ˈspredʃiːt/ bảng tính
    database management system/ˈdeɪtəbeɪs ˈmænɪdʒmənt ˈsɪstəm/ hệ quản trị cơ sở dữ liệu
    web browser/web ˈbraʊzə/ trình duyệt web
    providing a user interface/prəˈvaɪdɪŋ ə ˈjuːzə ˈɪntəfeɪs/ cung cấp giao diện người dùng
    managing peripherals/ˈmænɪdʒɪŋ pəˈrɪfərəlz/ quản lý thiết bị ngoại vi
    managing multitasking/ˈmænɪdʒɪŋ ˈmʌltitæskɪŋ/ quản lý đa tác vụ
    providing a platform/prəˈvaɪdɪŋ ə ˈplætfɔːm/ cung cấp nền tảng
    machine code/məˈʃiːn kəʊd/ mã máy
    assembly language/əˈsemblɪ ˈlæŋɡwɪdʒ/ ngôn ngữ assembly
    specific/spəˈsɪfɪk/ cụ thể
    translator/trænˈsleɪtə/ trình dịch
  • 5

    The internet and its uses · ⁨Internet và các ứng dụng của nó⁩

    Watch lesson · ⁨Xem bài học⁩
    5.1

    The internet and the world wide web · ⁨Internet và World Wide Web⁩

    Syllabus · ⁨Chương trình⁩
    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
    Tiếng Việt
    Thí sinh cần có thể: Ghi chú và hướng dẫn
    1 Hiểu sự khác biệt giữa Internet và World Wide Web • Internet là hạ tầng • World Wide Web là tập hợp các trang web và trang web được truy cập thông qua Internet
    2 Hiểu ý nghĩa của địa chỉ tài nguyên đồng nhất (URL) • URL là địa chỉ dựa trên văn bản dành cho một trang web; nó có thể chứa giao thức, tên miền và tên trang web/tệp
    3 Mô tả mục đích và hoạt động của giao thức truyền tải siêu văn bản (HTTP) và giao thức truyền tải siêu văn bản an toàn (HTTPS)
    4 Giải thích mục đích và chức năng của trình duyệt web • Mục đích chính của trình duyệt web là hiển thị ngôn ngữ đánh dấu siêu văn bản (HTML) và hiển thị các trang web • Các chức năng bao gồm: – lưu dấu trang và mục yêu thích – ghi lại lịch sử người dùng – cho phép sử dụng nhiều tab – lưu cookie – cung cấp công cụ điều hướng – cung cấp thanh địa chỉ
    5 Mô tả cách các trang web được tìm kiếm, lấy và hiển thị trên thiết bị khi người dùng nhập URL • Bao gồm vai trò của: – trình duyệt web – địa chỉ IP – máy chủ tên miền (DNS) – máy chủ web – HTML
    6 Giải thích ý nghĩa của cookie và cách chúng được sử dụng, bao gồm cookie phiên và cookie vĩnh viễn • Cookie được sử dụng cho các chức năng, bao gồm: – lưu thông tin cá nhân – theo dõi sở thích của người dùng – giữ các mặt hàng trong giỏ mua sắm trực tuyến – lưu thông tin đăng nhập

    Source: Cambridge International syllabus · ⁨Nguồn: Chương trình 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.

    Tiếng Việt

    Nhiều người thường nhầm lẫn hai thuật ngữ này, nhưng chúng không giống nhau.

    • Internet là infrastructure (hạ tầng) — mạng lưới máy tính toàn cầu khổng lồ cùng các cáp, bộ định tuyến (router) và kết nối liên kết chúng.
    • World wide web (WWW) là tập hợp các website và trang web mà bạn xem qua internet.

    Vì vậy, internet là mạng; web là một trong những thứ bạn sử dụng trên mạng đó.

    Hộp lớn mang nhãn Internet chứa hai hộp nhỏ hơn: World Wide Web và các dịch vụ khác như email
    Internet là mạng toàn cầu; World Wide Web là một trong những thứ bạn sử dụng trên đó
    Bộ định tuyến hình hộp đen có ba ăng-ten dựng đứng từ phía trên
    Bộ định tuyến kết nối mạng gia đình của bạn với internet và gửi dữ liệu đến đúng nơi
    Vocabulary · ⁨Từ vựng⁩ Train · ⁨Luyện tập⁩
    English Tiếng Việt
    internet/ˈɪntənet/ internet
    infrastructure/ˈɪnfrəstrʌktʃə/ hạ tầng
    world wide web/wɜːld waɪd web/ World Wide Web
    websites/ˈwebsaɪts/ trang web
    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.

    Tiếng Việt

    Một uniform resource locator (URL) là địa chỉ dạng văn bản của một trang web. Bạn nhập nó vào web browser (trình duyệt web) để truy cập trang, ví dụ https://www.example.com/index.html.

    URL https://www.example.com/index.html được tách thành ba phần có nhãn: giao thức, tên miền và đường dẫn
    Một URL có ba phần: giao thức, tên miền và đường dẫn đến trang web trên máy chủ
    Vocabulary · ⁨Từ vựng⁩ Train · ⁨Luyện tập⁩
    English Tiếng Việt
    uniform resource locator/ˈjuːnɪfɔːm rɪˈzɔːs ləʊˈkeɪtə/ định址 tài nguyên đồng nhất
    web browser/web ˈbraʊzə/ trình duyệt web
    5.1

    The web browser · ⁨Trình duyệt web⁩

    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.
    Tiếng Việt

    Trình duyệt web là chương trình bạn dùng để xem trang web. Vai trò của nó bao gồm:

    • rendering (vẽ) hypertext markup language (HTML) — chuyển mã của trang thành những gì bạn thấy;
    • displaying web pages (hiển thị trang web) trên màn hình;
    • managing how a web page is presented (quản lý cách hiển thị trang web) — bố cục, văn bản và hình ảnh của nó.
    Vocabulary · ⁨Từ vựng⁩ Train · ⁨Luyện tập⁩
    English Tiếng Việt
    rendering/ˈrendərɪŋ/ hiển thị
    hypertext markup language/ˈhaɪpətekst ˈmɑːkʌp ˈlæŋɡwɪdʒ/ ngôn ngữ đánh dấu siêu văn bản
    5.1

    How a web page reaches you · ⁨Cách trang web đến với bạn⁩

    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.

    Tiếng Việt

    Khi bạn nhập URL và nhấn Enter, nhiều bước xảy ra:

    1. Trình duyệt cần IP address (địa chỉ IP) của website, nhưng URL sử dụng tên gọi thay vì số.
    2. Trình duyệt yêu cầu một domain name service (DNS) — hệ thống lưu trữ địa chỉ IP cho mỗi địa chỉ web.
    3. DNS tìm thấy địa chỉ IP tương ứng và gửi lại cho trình duyệt.
    4. Trình duyệt sử dụng địa chỉ IP để liên lạc với web server (máy chủ web) lưu trữ trang đó.
    5. Máy chủ web gửi HTML của trang lại cho trình duyệt.
    6. Trình duyệt biến HTML thành trang và hiển thị nó.
    Trình duyệt yêu cầu địa chỉ IP từ máy chủ DNS, sau đó yêu cầu trang web từ máy chủ web và nhận lại mã HTML
    Trình duyệt yêu cầu địa chỉ IP của trang web từ DNS, sau đó yêu cầu trang từ máy chủ web, người trả về mã HTML

    Nếu DNS không có địa chỉ, nó sẽ hỏi máy chủ DNS khác cho đến khi tìm thấy địa chỉ.

    Các hàng dài máy chủ máy tính trong giá đỡ kim loại, chiếu sáng bằng đèn xanh dương, bên trong trung tâm dữ liệu
    Trung tâm dữ liệu đầy ắp máy chủ: những máy tính mạnh mẽ lưu trữ trang web và gửi chúng đến bạn

    Worked example. Phân tích URL https://www.example.com/books/index.html. https là protocol (giao thức), tập hợp quy tắc dùng để truyền trang (s có nghĩa là việc truyền dữ liệu được mã hóa). www.example.com là domain name (tên miền), xác định máy chủ web và mà một máy chủ DNS sẽ chuyển đổi thành địa chỉ IP. /books/index.html là file path and file name (đường dẫn tệp và tên tệp) của tài nguyên được lưu trên máy chủ đó. Đặt tên cho mỗi phần kèm theo job (nhiệm vụ): câu trả lời nói "phần đầu" và "phần cuối" mô tả URL mà không bao giờ giải thích rõ ràng.

    Explore · ⁨Khám phá⁩

    What happens when you load a web page · ⁨Điều gì xảy ra khi bạn tải một trang web⁩

    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. · ⁨Hãy lần lượt thực hiện từng bước. Địa chỉ web chỉ là một tên — DNS chuyển đổi nó thành địa chỉ IP trước khi trình duyệt có thể yêu cầu máy chủ phù hợp để lấy trang đó.⁩

    Vocabulary · ⁨Từ vựng⁩ Train · ⁨Luyện tập⁩
    English Tiếng Việt
    IP address/ˌaɪ ˈpiː əˈdres/ địa chỉ IP
    domain name service/dəˈmeɪn neɪm ˈsɜːvɪs/ dịch vụ tên miền
    web server/web ˈsɜːvə/ máy chủ web
    session/ˈseʃn/ phiên làm việc
    persistent/pəˈsɪstənt/ persistent
    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.
    Tiếng Việt

    Một cookie là tệp văn bản nhỏ do website lưu trữ trên thiết bị của bạn. Nó giúp website ghi nhớ thông tin về bạn. Có hai loại.

    Cookie là một tập tin văn bản nhỏ, được lưu trữ trên máy tính của bạn, ghi nhớ cài đặt hoặc thông tin đăng nhập của bạn
    Cookie là một tệp văn bản nhỏ được lưu trên máy tính của bạn
    Type Kept when you close the browser? Used for
    cookie phiên không — bị xóa khi bạn tắt trình duyệt dữ liệu ngắn hạn, ví dụ: các mục trong giỏ hàng
    cookie bền vững có — được lưu trên thiết bị ghi nhớ bạn giữa các lần truy cập

    Cookies được sử dụng để:

    • save personal details (lưu thông tin cá nhân) để bạn không phải nhập lại (như đăng nhập hoặc địa chỉ);
    • track user preferences (theo dõi sở thích người dùng), như ngôn ngữ hoặc những thứ bạn thích, để trang web có thể gợi ý nội dung.
    Vocabulary · ⁨Từ vựng⁩ Train · ⁨Luyện tập⁩
    English Tiếng Việt
    user preferences/ˈjuːzə ˈprefrənsɪz/ tùy chọn người dùng
    5.2

    Digital currency

    Syllabus · ⁨Chương trình⁩
    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
    Tiếng Việt
    Thí sinh cần có thể: Ghi chú và hướng dẫn
    1 Hiểu khái niệm về tiền kỹ thuật số và cách tiền kỹ thuật số được sử dụng • Tiền kỹ thuật số là loại tiền chỉ tồn tại dưới dạng điện tử
    2 Hiểu quy trình chuỗi khối (blockchain) và cách nó được sử dụng để theo dõi các giao dịch tiền kỹ thuật số • Blockchain, ở dạng cơ bản, là một sổ sách kỹ thuật số, tức là một chuỗi các bản ghi có gắn thời gian không thể bị thay đổi

    Source: Cambridge International syllabus · ⁨Nguồn: Chương trình 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.

    Tiếng Việt

    Một digital currency (tiền điện tử) là tiền chỉ tồn tại dưới electronic form (dạng điện tử). Không có đồng xu hay tờ giấy. Nó được lưu trữ và chuyển giữa mọi người bằng máy tính, và có thể dùng để thanh toán online.

    Vấn đề với tiền điện tử là niềm tin: làm thế nào để ngăn ai đó tiêu cùng một khoản tiền hai lần, hoặc thay đổi sổ sách? Blockchain giải quyết vấn đề này.

    Vocabulary · ⁨Từ vựng⁩ Train · ⁨Luyện tập⁩
    English Tiếng Việt
    digital currency/ˈdɪdʒɪtl ˈkʌrənsi/ tiền kỹ thuật số
    electronic form/ɪlekˈtrɒnɪk fɔːm/ biểu mẫu điện tử
    blockchain/ˈblɒktʃeɪn/ blockchain
    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.

    Tiếng Việt

    Một blockchain là digital ledger (sổ cái kỹ thuật số) — bản ghi chung của mọi transaction (giao dịch). Bản ghi này được sao chép trên nhiều máy tính, nên không có cá nhân nào kiểm soát duy nhất và rất khó để thay đổi.

    Các giao dịch được giữ trong các block nối thành chuỗi. Mỗi block chứa:

    • data (dữ liệu) của giao dịch (ai đã trả cho ai, và số tiền bao nhiêu);
    • một dấu thời gian (ngày và giờ);
    • một giá trị hash — một mã đặc biệt được tính toán từ nội dung của khối.

    Mỗi khối cũng lưu trữ hash của khối trước nó. Nếu ai đó thay đổi một khối cũ, hash của nó sẽ thay đổi, do đó không còn khớp với khối tiếp theo nữa. Điều này làm gãy chuỗi và sự thay đổi bị phát hiện ngay lập tức. Đây là cách blockchain theo dõi các giao dịch an toàn.

    Ba khối trong một chuỗi, mỗi khối chứa dữ liệu, dấu thời gian và hash, với mỗi khối cũng lưu trữ hash của khối trước đó
    Mỗi khối lưu trữ hash của khối trước đó, liên kết các khối lại; thay đổi một khối sẽ làm gãy chuỗi
    Explore · ⁨Khám phá⁩

    Hashing behind a blockchain · ⁨Hashing phía sau 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. · ⁨Một hàm hash là một chiều và một thay đổi nhỏ ở đầu vào sẽ làm đảo ngược phần lớn đầu ra — blockchain liên kết các hàm hash này lại với nhau nên bất kỳ can thiệp nào cũng rõ ràng.⁩

    Vocabulary · ⁨Từ vựng⁩ Train · ⁨Luyện tập⁩
    English Tiếng Việt
    digital ledger/ˈdɪdʒɪtl ˈledʒə/ sổ cái kỹ thuật số
    transaction/trænˈsækʃn/ giao dịch
    timestamp/ˈtaɪmstæmp/ dấu thời gian
    hash value/hæʃ ˈvæljuː/ giá trị hash
    cyber security/ˈsaɪbə sɪˈkjʊərɪti/ an ninh mạng
    brute force attack/bruːt fɔːs əˈtæk/ tấn công thử sức mạnh
    data interception/ˈdeɪtə ˌɪntəˈsepʃn/ can thiệp dữ liệu
    distributed denial of service/ˈdɪstrɪbjuːtɪd dɪˈnaɪəl ɒv ˈsɜːvɪs/ tấn công từ chối dịch vụ phân tán
    5.3

    Cyber security threats · ⁨Mối đe dọa an ninh mạng⁩

    Syllabus · ⁨Chương trình⁩
    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
    Tiếng Việt
    Thí sinh cần có thể: Ghi chú và hướng dẫn
    1 Mô tả các quy trình liên quan đến và mục tiêu thực hiện một loạt các tấn công an ninh mạng • Bao gồm: – tấn công thử brute-force – can thiệp dữ liệu – tấn công từ chối dịch vụ phân tán (DDoS) –黑客 – mã độc (virus, sâu, ngựa Trojan, phần mềm gián điệp, phần mềm quảng cáo, phần mềm tống tiền) – pharming – phishing – kỹ thuật xã hội
    2 Giải thích cách một loạt các giải pháp được sử dụng để giúp bảo vệ dữ liệu khỏi các mối đe dọa an ninh • Bao gồm: – mức độ truy cập – phần mềm chống mã độc, bao gồm phần mềm chống virus và chống phần mềm gián điệp – xác thực (tên người dùng và mật khẩu, sinh trắc học, xác minh hai bước) – tự động hóa cập nhật phần mềm – kiểm tra chính tả và ngữ điệu của các cuộc giao tiếp – kiểm tra URL đính kèm trong liên kết – tường lửa – cài đặt quyền riêng tư – máy chủ proxy – giao thức bảo mật lớp socket an toàn (SSL)

    Source: Cambridge International syllabus · ⁨Nguồn: Chương trình 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.

    Tiếng Việt

    An ninh mạng có nghĩa là bảo vệ máy tính, mạng lưới và dữ liệu khỏi các cuộc tấn công. Bạn cần biết những mối đe dọa này.

    Mối đe dọa Nội dung
    tấn công brute force thử nhiều mật khẩu rất nhanh cho đến khi tìm thấy mật khẩu đúng
    nghe lén dữ liệu "lắng nghe" để đánh cắp dữ liệu khi nó di chuyển qua mạng
    tấn công từ chối dịch vụ phân tán (DDoS) tràn ngập máy chủ bằng quá nhiều yêu cầu khiến nó không thể phản hồi, dẫn đến việc website bị sập
    hacking truy cập vào hệ thống máy tính mà không có sự cho phép
    phần mềm độc hại phần mềm gây hại (xem bảng dưới đây)
    pharming mã bí mật điều hướng bạn đến trang web giả ngay cả khi bạn nhập đúng địa chỉ
    phishing email hoặc tin nhắn giả mạo đánh lừa bạn tiết lộ thông tin riêng tư
    kỹ thuật xã hội đánh lừa con người (không phải máy tính) vi phạm bảo mật, ví dụ: giả vờ là sếp

    Các loại phần mềm độc hại

    Phần mềm độc hại là bất kỳ phần mềm nào được tạo ra để gây hại cho máy tính. Các loại chính bao gồm:

    Phần mềm độc hại Tác động
    virus gắn vào một tệp và sao chép chính nó khi tệp được mở; có thể xóa hoặc làm hỏng dữ liệu
    worm tự sao chép lan truyền trên mạng mà không cần tệp được mở
    ngựa thành Troy giả vờ là phần mềm hữu ích, nhưng gây hại cho máy tính sau khi cài đặt
    phần mềm gián điệp ghi âm bí mật những gì bạn làm, chẳng hạn như các phím bạn nhấn
    phần mềm quảng cáo tràn ngập bạn với các quảng cáo không mong muốn
    phần mềm tống tiền khóa tập tin của bạn và đòi tiền để mở khóa chúng

    Tác động của các mối đe dọa

    Các cuộc tấn công này có thể đánh cắp dữ liệu cá nhân, xóa hoặc thay đổi tập tin, làm gián đoạn dịch vụ, tốn kém tiền bạc, và khiến người dùng mất niềm tin vào công ty. Ví dụ, một cuộc tấn công DDoS có thể khiến cửa hàng trực tuyến không sử dụng được, dẫn đến mất doanh số bán hàng.

    Một ổ khóa: an ninh mạng khóa dữ liệu và hệ thống chống lại phần mềm độc hại, phishing và truy cập trái phép
    Một ổ khóa: an ninh mạng khóa dữ liệu và hệ thống chống lại phần mềm độc hại, phishing và truy cập trái phép
    Vocabulary · ⁨Từ vựng⁩ Train · ⁨Luyện tập⁩
    English Tiếng Việt
    hacking/ˈhækɪŋ/ crack mã
    malware/ˈmælweə/ malware (mã độc)
    pharming/ˈfɑːmɪŋ/ pharming (định hướng giả)
    phishing/ˈfɪʃɪŋ/ phishing
    social engineering/ˈsəʊʃl ˌendʒɪˈnɪərɪŋ/ kỹ thuật xã hội
    virus/ˈvaɪrəs/ virus
    worm/wɜːm/ worm
    Trojan horse/ˈtrəʊdʒn hɔːs/ ngựa Trojan
    spyware/ˈspaɪweə/ phần mềm gián điệp
    adware/ˈædweə/ phần mềm quảng cáo
    ransomware/ˈrænsəmweə/ ransomware (phần mềm tống tiền)
    access levels/ˈækses ˈlevlz/ mức độ truy cập
    anti-malware/ˈænti ˈmælweə/ chống mã độc
    anti-virus/ˈænti ˈvaɪrəs/ phần mềm diệt virus
    anti-spyware/ˈænti ˈspaɪweə/ phần mềm chống spyware
    authentication/ɔːˌθentɪˈkeɪʃn/ xác thực
    biometrics/ˌbaɪəʊˈmetrɪks/ biometrics (sinh trắc học)
    password/ˈpæswɜːd/ mật khẩu
    two-step verification/tuː step ˌverɪfɪˈkeɪʃn/ xác minh hai bước
    5.3

    Keeping data safe · ⁨Bảo vệ dữ liệu an toàn⁩

    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.
    Tiếng Việt

    Bạn có thể bảo vệ dữ liệu bằng các phương pháp sau.

    • mức độ truy cập — mỗi người dùng chỉ có thể xem hoặc thay đổi dữ liệu họ cần, không nhiều hơn thế.
    • phần mềm chống phần mềm độc hại, bao gồm chống virus và chống phần mềm gián điệp — quét và loại bỏ phần mềm gây hại.
    • xác thực — chứng minh danh tính của bạn trước khi cấp quyền truy cập. Các phương pháp bao gồm:
      • sinh trắc học (vân tay hoặc khuôn mặt),
      • mật khẩu,
      • xác thực hai bước (mã được gửi đến điện thoại của bạn cùng với mật khẩu).
    • tự động hóa cập nhật phần mềm — bản cập nhật sửa chữa các điểm yếu (lỗi) trong phần mềm một cách tự động.
    • kiểm tra chính tả và giọng điệu của tin nhắn — lỗi chính tả hoặc giọng điệu lạ, gấp gáp có thể cho thấy tin nhắn là giả (phishing).
    • kiểm tra URL đính kèm trong liên kết — địa chỉ web sai hoặc kỳ lạ cảnh báo bạn rằng liên kết đó không an toàn.
    • firewall — kiểm tra dữ liệu đi vào và ra khỏi mạng và chặn mọi thứ không được phép.
    • cài đặt quyền riêng tư — kiểm soát ai có thể xem thông tin của bạn trực tuyến.
    Một firewall giữa internet và mạng riêng tư, cho phép kết nối được phép đi qua và chặn kết nối khác
    Tường lửa nằm giữa internet bên ngoài và mạng của bạn, kiểm tra từng kết nối và chặn mọi lưu lượng không được phép.
    • máy chủ proxy — đứng giữa người dùng và internet, ẩn địa chỉ IP của người dùng và lọc bỏ nội dung không an toàn.
    Explore · ⁨Khám phá⁩

    Encryption with a key · ⁨Mã hóa với khóa⁩

    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. · ⁨Thay đổi độ dịch — đó chính là khóa. Mỗi chữ cái trượt đi số vị trí đó để tạo ra văn bản mã hóa, và cùng một khóa sẽ trượt nó trở lại. Đó là mã hóa đối xứng.⁩

    Vocabulary · ⁨Từ vựng⁩ Train · ⁨Luyện tập⁩
    English Tiếng Việt
    firewall/ˈfaɪəwɔːl/ tường lửa
    privacy settings/ˈprɪvəsi ˈsetɪŋz/ cài đặt quyền riêng tư
    proxy server/ˈprɒksi ˈsɜːvə/ máy chủ proxy
    5.3

    Exam tips · ⁨Mẹo làm bài thi⁩

    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.
    Tiếng Việt
    • Internet là mạng lưới toàn cầu (cơ sở hạ tầng); World Wide Web là các trang bạn xem trên đó — đừng nhầm lẫn hai khái niệm này.
    • Học cách một trang tải lên: trình duyệt yêu cầu từ DNS địa chỉ IP của trang web, sau đó yêu cầu trang từ máy chủ web, nơi trả về HTML.
    • Khớp các loại phần mềm độc hại: virus (gắn vào tệp), worm (lan rộng tự nhiên trên mạng), ngựa thành Troy (giả vờ hữu ích), phần mềm gián điệp, phần mềm tống tiền.
    • Khớp mỗi mối đe dọa với biện pháp phòng thủ: phishing/pharming → kiểm tra URL; brute force → mật khẩu mạnh + xác thực hai bước; nghe lén → mã hóa; hacking/DDoS → firewall.
    • Cookie phiên bị xóa khi bạn đóng trình duyệt; cookie bền được lưu lại để nhớ bạn giữa các lần truy cập.
  • 6

    Automated and emerging technologies · ⁨Công nghệ tự động hóa và công nghệ mới nổi⁩

    Watch lesson · ⁨Xem bài học⁩
    6.1

    Automated systems · ⁨Hệ thống tự động hóa⁩

    Syllabus · ⁨Chương trình⁩
    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
    Tiếng Việt
    Thí sinh cần có thể: Ghi chú và hướng dẫn
    1 Mô tả cách cảm biến, vi xử lý và cơ cấu chấp hành có thể được sử dụng phối hợp để tạo ra hệ thống tự động hóa
    2 Mô tả ưu điểm và nhược điểm của một hệ thống tự động hóa được sử dụng cho một tình huống cụ thể • Bao gồm các tình huống từ: – công nghiệp – giao thông – nông nghiệp – thời tiết – trò chơi – chiếu sáng – khoa học

    Source: Cambridge International syllabus · ⁨Nguồn: Chương trình 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.

    Tiếng Việt

    Một hệ thống tự động hóa là sự kết hợp giữa phần mềm và phần cứng cảm biến và phản hồi với dữ liệu trong môi trường của nó, không cần can thiệp của con người. Nói cách khác, nó hoạt động độc lập.

    Ví dụ về các hệ thống tự động hóa:

    • hệ thống sưởi trung tâm;
    • quy trình hóa học trong nhà máy;
    • nhà kính (để trồng cây);
    • cổng rào bãi đỗ xe.

    Cảm biến, vi xử lý và cơ cấu chấp hành

    Ba bộ phận hoạt động cùng nhau trong một hệ thống tự động hóa.

    Bộ phận Chức năng
    cảm biến đo lường một đại lượng vật lý (như nhiệt độ hoặc ánh sáng) và gửi dữ liệu
    vi xử lý so sánh dữ liệu với các giá trị đã lưu và đưa ra quyết định
    cơ cấu chấp hành nhận tín hiệu và gây ra chuyển động hoặc hành động (như mở van)

    Chu trình hoạt động như sau:

    1. Cảm biến gửi dữ liệu đến vi xử lý.
    2. Vi xử lý so sánh dữ liệu này với giá trị đã lưu trữ và đưa ra quyết định.
    3. Vi xử lý gửi tín hiệu đến các cơ cấu chấp hành để thực hiện hành động.

    Ví dụ, trong một nhà kính: cảm biến nhiệt độ đọc nhiệt; vi xử lý so sánh nó với giá trị mong muốn; nếu quá nóng, vi xử lý báo cho cơ cấu chấp hành mở cửa sổ.

    Một vòng lặp: cảm biến nhiệt độ cung cấp dữ liệu cho vi xử lý, người này báo cho cơ cấu chấp hành mở cửa sổ, làm mát nhà kính, sau đó cảm biến lại đo lường lần nữa
    Cảm biến cung cấp dữ liệu cho vi xử lý, người này so sánh chỉ số đọc được với giá trị đã lưu và báo cho cơ cấu chấp hành; vòng lặp sau đó lặp lại

    Chương trình học liệt kê nhiều loại cảm biến, mỗi loại đo một đại lượng vật lý – ví dụ như cảm biến gia tốc (chuyển động hoặc nghiêng), cảm biến độ ẩm (hơi nước trong không khí) và cảm biến gần (vật thể ở gần):

    Cảm biến Đo lường Ứng dụng điển hình
    nhiệt độ nhiệt lượng lò nướng, nhà kính, hệ thống sưởi
    ánh sáng độ sáng đèn tự động, camera
    áp suất lực tác động lên bề mặt thảm cảnh báo, màn hình cảm ứng
    hồng ngoại / gần vật thể ở gần cửa tự động, cảm biến đỗ xe
    âm thanh (âm học) mức độ âm thanh thiết bị giám sát tiếng ồn
    độ ẩm / độ ẩm đất hơi nước trong không khí hoặc đất nhà kính, tưới tiêu
    khí sự hiện diện của khí báo cháy và CO
    pH độ axit hồ bơi, bể cá
    cảm biến gia tốc chuyển động hoặc nghiêng điện thoại, kích hoạt túi khí
    từ trường từ tính tiếp điểm cửa, la bàn
    lưu lượng / mực nước dòng chảy chất lỏng hoặc độ sâu đường ống, bồn chứa

    Để chọn cảm biến cho một tình huống, hãy chọn loại đo đúng đại lượng vật lý: bể cá cần cảm biến pH và nhiệt độ; cửa tự động cần cảm biến hồng ngoại / gần.

    Ưu điểm và nhược điểm

    Hệ thống tự động được sử dụng trong nhiều tình huống, chẳng hạn như công nghiệp, vận tải, nông nghiệp (trồng trọt), thời tiết (thu thập dữ liệu), trò chơi và chiếu sáng.

    Ưu điểm của hệ thống tự động, như hoạt động 24/7 và tính nhất quán, đối lập với nhược điểm, như chi phí thiết lập cao và mất việc làm
    Ưu điểm và nhược điểm của hệ thống tự động
    Một drone bốn cánh quạt màu trắng có gắn camera nhỏ, đang bay trên bầu trời phía trên biển
    Drone camera: nó có thể tự bay theo tuyến đường đã định để thu thập dữ liệu
    Ưu điểm Nhược điểm
    hoạt động cả ngày lẫn đêm, không nghỉ ngơi tốn kém để mua và thiết lập
    nhanh hơn và nhất quán hơn con người có thể hỏng hóc và cần sửa chữa chuyên gia
    có thể làm việc ở những nơi nguy hiểm đối với con người có thể thay thế việc làm của con người
    ít sai sót do con người gây ra không dễ dàng phản ứng với tình huống mà chúng không được thiết kế để xử lý

    Ví dụ minh họa. Mô tả cách nhà kính tự động duy trì nhiệt độ ở 25 °C. Một cảm biến nhiệt độ liên tục đo nhiệt độ và gửi chỉ số đọc được, được chuyển đổi sang kỹ thuật số bởi bộ ADC, đến vi xử lý. Vi xử lý so sánh chỉ số đọc được với giá trị đã lưu là 25 °C. Nếu nhiệt độ cao hơn, vi xử lý báo cho cơ cấu chấp hành mở cửa sổ hoặc bật quạt; nếu thấp hơn, nó bật máy sưởi. Toàn bộ vòng lặp sau đó lặp lại liên tục. Hai điểm chấm thường nằm ở cụm từ "so sánh với giá trị đã lưu (ngăn trước)" và "quá trình lặp lại" - một mô tả dừng lại ở "cảm biến nói với máy tính" sẽ bỏ lỡ những điểm này.

    Explore · ⁨Khám phá⁩

    An automated control loop · ⁨Vòng lặp điều khiển tự động⁩

    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. · ⁨Vòng lặp phản hồi. Một hệ thống tự động cảm biến, so sánh với mục tiêu, sau đó thực hiện hành động — và vì hành động thay đổi những gì nó cảm biến, nó liên tục tự điều chỉnh mà không cần sự can thiệp của con người.⁩

    Vocabulary · ⁨Từ vựng⁩ Train · ⁨Luyện tập⁩
    English Tiếng Việt
    automated system/ˈɔːtəmeɪtɪd ˈsɪstəm/ hệ thống tự động hóa
    environment/enˈvaɪrənmənt/ môi trường
    human intervention/ˈhjuːmən ˌɪntəˈvenʃn/ can thiệp của con người
    greenhouse/ˈɡriːnhaʊs/ nhà kính
    car park barrier/kɑː pɑːk ˈbærɪə/ cửa chắn bãi đậu xe
    sensor/ˈsensə/ cảm biến
    microprocessor/ˌmaɪkrəʊˈprəʊsesə/ vi xử lý
    actuator/ˈæktʃuːeɪtə/ cơ cấu tác động
    stored values/stɔːd ˈvæljuːz/ giá trị đã lưu trữ
    sensor types/ˈsensə taɪps/ kiểu cảm biến
    accelerometer/əkˌseləˈrɒmɪtə/ gia tốc kế
    humidity/hjuːˈmɪdɪti/ độ ẩm
    proximity/prɒkˈsɪmɪti/ proximity (sự gần gũi)
    consistent/kənˈsɪstənt/ nhất quán, thống nhất
    Robotics/rəʊˈbɒtɪks/ Robotics
    robots/ˈrəʊbɒts/ robot
    physical structure/ˈfɪzɪkl ˈstrʌktʃə/ cấu trúc vật lý
    electrical components/ɪˈlektrɪkl kəmˈpəʊnənts/ linh kiện điện tử
    programmable instructions/ˈprəʊɡrəməbl ɪnˈstrʌkʃnz/ lệnh có thể lập trình
    factory equipment/ˈfæktəri ɪˈkwɪpmənt/ thiết bị nhà máy
    domestic appliances/dəˈmestɪk əˈplaɪənsɪz/ dụng cụ gia dụng
    vacuum cleaner/ˈvækjuːm ˈkliːnə/ máy hút bụi
    lack of independent decision-making/læk ɒv ˌɪndɪˈpendənt dɪˈsɪʒn ˈmeɪkɪŋ/ thiếu quyết định độc lập
    Artificial intelligence/ˌɑːtɪˈfɪʃl ɪnˈtelɪdʒəns/ Trí tuệ nhân tạo
    simulation/ˌsɪmjʊˈleɪʃn/ mô phỏng
    rules/ruːlz/ loại bỏ
    reason/ˈriːzn/ lý trí
    draw conclusions/drɔː kənˈkluːʒnz/ rút ra kết luận
    approximate/əˈprɒksɪmət/ xấp xỉ
    definite/ˈdefɪnət/ chắc chắn
    learn/lɜːn/ học hỏi
    adapt/əˈdæpt/ thích nghi
    expert systems/ˈekspɜːt ˈsɪstəmz/ hệ thống chuyên gia
    natural language processing/ˈnætʃərəl ˈlæŋɡwɪdʒ ˈprəʊsesɪŋ/ xử lý ngôn ngữ tự nhiên
    self-driving cars/self ˈdraɪvɪŋ kɑːz/ xe tự lái
    knowledge base/ˈnɒlɪdʒ beɪs/ cơ sở tri thức
    rule base/ruːl beɪs/ cơ sở quy tắc
    inference engine/ˈɪnfərəns ˈendʒɪn/ động cơ suy luận
    user interface/ˈjuːzə ˈɪntəfeɪs/ giao diện người dùng
    Machine learning/məˈʃiːn ˈlɜːnɪŋ/ Học máy
    narrow AI/ˈnærəʊ ˌeɪ ˈaɪ/ AI hẹp
    general AI/ˈdʒenərəl ˌeɪ ˈaɪ/ AI rộng
    strong AI/strɒŋ ˌeɪ ˈaɪ/ AI mạnh
    central heating/ˈsentrəl ˈhiːtɪŋ/ sưởi ấm tập trung
    chemical process/ˈkemɪkl ˈprəʊses/ quá trình hóa học
    agriculture/ˈæɡrɪkʌltʃə/ nông nghiệp
    mechanical/mɪˈkænɪkl/ cơ
    6.2

    Robotics · ⁨Robot học⁩

    Syllabus · ⁨Chương trình⁩
    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
    Tiếng Việt
    Thí sinh cần có thể: Ghi chú và hướng dẫn
    1 Hiểu khái niệm về robotics • Robotics là một nhánh của khoa học máy tính bao gồm thiết kế, chế tạo và vận hành robot • Ví dụ bao gồm: thiết bị nhà máy, robot gia dụng và drone
    2 Mô tả các đặc điểm của một robot • Bao gồm: – kết cấu cơ khí hoặc khung sườn – linh kiện điện tử, chẳng hạn như cảm biến, vi xử lý và bộ chấp hành – có khả năng lập trình
    3 Hiểu vai trò mà robot có thể thực hiện và mô tả ưu/nhược điểm trong việc sử dụng chúng • Robot có thể được sử dụng trong các lĩnh vực như: – công nghiệp – giao thông – nông nghiệp – y tế – môi trường sống – giải trí

    Source: Cambridge International syllabus · ⁨Nguồn: Chương trình 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.

    Tiếng Việt

    Robot học là nhánh công nghệ liên quan đến thiết kế, chế tạo và vận hành robot.

    Một robot có những đặc điểm sau:

    • cấu trúc vật lý (thân máy cơ khí, chẳng hạn như cánh tay);
    • linh kiện điện tử (động cơ, cảm biến và dây dẫn);
    • lệnh lập trình — nó tuân theo chương trình có thể thay đổi.

    Robot làm gì

    Robot có thể đảm nhận nhiều vai trò, ví dụ:

    • thiết bị nhà máy — chế tạo ô tô, hàn, di chuyển linh kiện nặng;
    • dụng cụ gia đình — như máy hút bụi robot.
    Cánh tay robot màu trắng trên dây chuyền sản xuất trong nhà máy, với các cáp và khung kim loại xung quanh
    Tay robot công nghiệp. Nó tuân theo một chương trình và có thể được lập trình lại để thực hiện một công việc mới.
    Máy hút bụi robot tròn, dẹt màu xám nhìn từ trên xuống, có các nút S, M và L ở mặt trên
    Máy hút bụi tự động: một robot gia dụng tự lái quanh phòng để lau sàn
    Ưu điểm Nhược điểm
    làm những công việc nhàm chán hoặc nguy hiểm tốn kém để mua và bảo trì
    làm việc nhanh chóng và chính xác có thể thay thế lao động con người
    không mệt mỏi hay nhàm chán robot thiếu khả năng ra quyết định độc lập — nó chỉ làm những gì được lập trình cho

    Hạn chế chính của robot là chúng không thể tự suy nghĩ. Chúng không thể đưa ra lựa chọn riêng khi có điều gì đó bất ngờ xảy ra.

    Explore · ⁨Khám phá⁩

    Computing concept lab · ⁨Phòng thí nghiệm khái niệm tin học⁩

    Classify concrete examples by the computing idea they demonstrate. · ⁨Phân loại các ví dụ cụ thể theo ý tưởng tin học mà chúng minh họa.⁩

    6.3

    Artificial intelligence · ⁨Trí tuệ nhân tạo⁩

    Syllabus · ⁨Chương trình⁩
    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
    Tiếng Việt
    Thí sinh cần có thể: Ghi chú và hướng dẫn
    1 Hiểu khái niệm về trí tuệ nhân tạo (AI) • AI là một nhánh của khoa học máy tính liên quan đến việc mô phỏng các hành vi thông minh bằng máy tính
    2 Mô tả các đặc điểm chính của AI dưới dạng tập hợp dữ liệu và quy tắc sử dụng dữ liệu đó, khả năng suy luận, và có thể bao gồm cả khả năng học hỏi và thích ứng
    3 Giải thích nguyên lý hoạt động cơ bản và các thành phần của hệ thống AI để mô phỏng hành vi thông minh • Giới hạn ở: – hệ chuyên gia – học máy • Hệ chuyên gia có cơ sở tri thức, cơ sở quy tắc, động cơ suy luận và giao diện • Học máy là khi chương trình có khả năng tự động điều chỉnh quy trình và/hoặc dữ liệu của chính nó

    Source: Cambridge International syllabus · ⁨Nguồn: Chương trình 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.
    Tiếng Việt

    Trí tuệ nhân tạo (AI) là mô phỏng trí tuệ con người bằng các hệ thống máy tính. Điều này có nghĩa là máy tính thực hiện các tác vụ thường đòi hỏi tư duy của con người.

    Đặc điểm của AI

    Các hệ thống AI thường có những tính năng sau:

    • chúng thu thập dữ liệu và các quy tắc để sử dụng dữ liệu đó;
    • chúng có khả năng suy luận (giải quyết vấn đề dựa trên các quy tắc);
    • chúng có khả năng rút ra kết luận, có thể là xấp xỉ (ước lượng tốt nhất) hoặc chắc chắn (không nghi ngờ);
    • chúng có khả năng học tập từ dữ liệu;
    • chúng có khả năng thích ứng — thay đổi hành vi khi nhận được dữ liệu mới.
    Một hệ thống AI dưới dạng vòng lặp: thu thập dữ liệu, áp dụng quy tắc và phát hiện mẫu, hành động dựa trên quyết định, sau đó học hỏi và cải thiện từ kết quả trước khi thu thập thêm dữ liệu
    Hệ thống AI thu thập dữ liệu, áp dụng quy tắc, hành động, sau đó học hỏi và cải thiện

    Ví dụ về AI

    • hệ thống chuyên gia — phần mềm đưa ra lời khuyên giống như một chuyên gia con người (ví dụ, hỗ trợ bác sĩ chẩn đoán bệnh);
    • xử lý ngôn ngữ tự nhiên — hiểu tiếng nói hoặc văn bản của con người;
    • xe tự lái.
    Một chiếc xe tự lái nhỏ màu trắng trên đường, với cảm biến quay ở nóc xe
    Xe tự lái: cảm biến trên xe giúp máy tính lái xe mà không cần tài xế

    Bên trong hệ thống chuyên gia

    Một hệ thống chuyên gia lưu trữ kiến thức của con người và suy luận từ đó. Nó có bốn phần:

    • một cơ sở tri thức – các sự thật đã được lưu trữ về chủ đề;
    • một cơ sở quy tắc – các quy tắc "nếu… thì…" mà một chuyên gia con người sẽ áp dụng;
    • một động cơ suy luận – áp dụng các quy tắc vào các sự thật để đưa ra kết luận;
    • một giao diện người dùng – đặt câu hỏi cho người dùng và hiển thị kết quả.

    Giao diện thu thập thông tin từ người dùng; động cơ suy luận chạy cơ sở quy tắc đối với cơ sở tri thức; và hệ thống đầu ra một chẩn đoán hoặc xác suất – như được sử dụng để giúp bác sĩ chẩn đoán bệnh hoặc tìm lỗi xe.

    Máy học

    Học máy là một chương trình cải thiện hiệu suất của chính nó dựa trên kinh nghiệm, mà không cần lập trình lại một cách rõ ràng. Nó tìm thấy các mẫu trong dữ liệu và thích ứng: một công cụ tìm kiếm trở nên tốt hơn trong việc xếp hạng kết quả, một trợ lý giọng nói nhận diện lệnh nói chính xác hơn, và một robot hút bụi dần dần học được bố cục của căn phòng.

    AI hẹp, chung và mạnh

    Ba bậc thang tăng dần: AI hẹp (tất cả AI hiện nay), AI chung, và AI mạnh, với AI chung và AI mạnh được ghi chú là chưa tồn tại
    AI hẹp thực hiện một nhiệm vụ (tất cả AI hiện nay); AI chung có thể làm mọi nhiệm vụ của con người; AI mạnh sẽ có nhận thức về bản thân — cả hai đều chưa tồn tại
    Loại Ý nghĩa
    AI hẹp chỉ có thể làm một nhiệm vụ hoặc một tập hợp nhỏ các nhiệm vụ (ví dụ: chương trình cờ vua). Tất cả AI hiện nay đều là AI hẹp.
    AI chung có thể làm mọi nhiệm vụ mà con người có thể làm, chuyển đổi giữa nhiều nhiệm vụ khác nhau.
    AI mạnh sẽ suy nghĩ và có nhận thức giống như một tâm trí con người thực. Điều này chưa tồn tại.
    Explore · ⁨Khám phá⁩

    Computing concept lab · ⁨Phòng thí nghiệm khái niệm tin học⁩

    Classify concrete examples by the computing idea they demonstrate. · ⁨Phân loại các ví dụ cụ thể theo ý tưởng tin học mà chúng minh họa.⁩

    6.3

    Exam tips · ⁨Mẹo làm bài thi⁩

    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).
    Tiếng Việt
    • Học vòng điều khiển: một cảm biến đo một đại lượng → vi xử lý so sánh nó với giá trị đã lưu trữ → cơ cấu chấp hành thực hiện hành động; sau đó vòng lặp lặp lại.
    • Đừng nhầm lẫn các bộ phận: một cảm biến gửi dữ liệu vào; một cơ cấu chấp hành gây ra chuyển động ra.
    • Một robot tuân theo lệnh có thể lập trình và không thể đưa ra quyết định riêng khi có điều gì đó bất ngờ xảy ra.
    • AI mô phỏng tư duy con người: nó thu thập dữ liệu và quy tắc, suy luận, rút ra kết luận, và có thể học hỏi và thích ứng.
    • Biết các cấp độ AI: hẹp (một nhiệm vụ; tất cả AI hiện nay), chung (mọi nhiệm vụ của con người), mạnh (có nhận thức về bản thân; chưa tồn tại).
  • 7

    Algorithm design and problem-solving · ⁨Thiết kế thuật toán và giải quyết vấn đề⁩

    Watch lesson · ⁨Xem bài học⁩
    Syllabus · ⁨Chương trình⁩
    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
    Tiếng Việt
    Thí sinh cần có thể: Ghi chú và hướng dẫn
    1 Hiểu vòng đời phát triển phần mềm, giới hạn ở: phân tích, thiết kế, lập trình và kiểm thử • Bao gồm xác định từng giai đoạn và thực hiện các nhiệm vụ cho mỗi giai đoạn: – phân tích: trừu tượng hóa, phân rã vấn đề, xác định vấn đề và yêu cầu – thiết kế: phân rã, sơ đồ cấu trúc, lưu đồ, mã giả – lập trình: viết mã chương trình và kiểm thử lặp – kiểm thử: kiểm thử mã chương trình bằng cách sử dụng dữ liệu kiểm thử
    2 (a) Hiểu rằng mọi hệ thống máy tính đều được cấu thành từ các hệ con, và các hệ con lại được cấu thành từ các hệ con nhỏ hơn (b) Hiểu cách một vấn đề có thể được phân rã thành các phần thành phần • Bao gồm: – đầu vào – quá trình xử lý – đầu ra – lưu trữ
    (c) Sử dụng các phương pháp khác nhau để thiết kế và xây dựng giải pháp cho một vấn đề • Bao gồm: – sơ đồ cấu trúc – lưu đồ – mã giả
    3 Giải thích mục đích của một thuật toán đã cho • Bao gồm: – nêu mục đích của thuật toán – mô tả các quy trình liên quan đến thuật toán
    4 Hiểu các phương pháp giải chuẩn • Giới hạn ở: – tìm kiếm tuyến tính – sắp xếp nổi bọt – cộng tổng – đếm số – tìm giá trị lớn nhất, nhỏ nhất và trung bình
    5 (a) Hiểu nhu cầu về kiểm tra hợp lệ đối với dữ liệu đầu vào và các loại kiểm tra hợp lệ khác nhau • Bao gồm: – kiểm tra phạm vi – kiểm tra độ dài – kiểm tra kiểu – kiểm tra sự tồn tại – kiểm tra định dạng – chữ số kiểm tra
    (b) Hiểu nhu cầu về kiểm tra xác nhận đối với dữ liệu đầu vào và các loại kiểm tra xác nhận khác nhau • Bao gồm: – kiểm tra trực quan – kiểm tra nhập hai lần
    6 Đề xuất và áp dụng dữ liệu kiểm thử phù hợp • Giới hạn ở: – bình thường – bất thường – cực đoan – biên • Dữ liệu cực đoan là giá trị lớn nhất/nhỏ nhất được chấp nhận • Dữ liệu biên là giá trị lớn nhất/nhỏ nhất được chấp nhận và giá trị tương ứng nhỏ nhất/lớn nhất bị từ chối
    7 Hoàn thành bảng theo dõi để ghi lại chạy khô của một thuật toán • Bao gồm, tại mỗi bước trong thuật toán: – biến – đầu ra – câu hỏi người dùng
    8 Xác định lỗi trong các thuật toán đã cho và đề xuất cách khắc phục những lỗi này
    9 Viết và sửa đổi thuật toán cho các vấn đề hoặc tình huống đã cho, sử dụng: mã giả, mã chương trình và lưu đồ • Cần sự chính xác khi viết thuật toán, ví dụ: x > y là chấp nhận được nhưng x is greater than y thì không chấp nhận được • Xem phần 4 để biết ký hiệu lưu đồ • Xem phần 4 để biết mã giả

    Source: Cambridge International syllabus · ⁨Nguồn: Chương trình Cambridge International⁩

    7.1

    The program development life cycle · ⁨Vòng đời phát triển chương trình⁩

    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.

    Tiếng Việt

    Vòng đời phát triển chương trình là tập hợp các giai đoạn được sử dụng để tạo ra một chương trình. Có bốn giai đoạn.

    Một lập trình viên đang gõ mã trên máy tính
    Phần mềm được viết bởi các lập trình viên, những người tuân theo vòng đời phát triển
    Giai đoạn Những gì bạn làm
    phân tích nghiên cứu vấn đề và xác định những gì cần thiết
    thiết kế lên kế hoạch chương trình sẽ hoạt động như thế nào
    lập trình viết mã chương trình và kiểm tra khi đi qua từng bước
    kiểm thử chạy chương trình hoàn chỉnh với dữ liệu kiểm thử để tìm lỗi
    Bốn giai đoạn nối tiếp nhau — phân tích, thiết kế, lập trình, kiểm thử — với mũi tên phản hồi từ kiểm thử đến thiết kế
    Bốn giai đoạn của phát triển chương trình; kiểm thử phản hồi để sửa chữa và tinh chỉnh thiết kế
    Sơ đồ luồng của một chương trình với các hộp quy trình và kim cương quyết định
    Sơ đồ luồng của một chương trình trình bày các bước và quyết định của chương trình trong giai đoạn thiết kế

    Phân tích

    Trong phân tích, bạn hiểu vấn đề. Hai kỹ năng then chốt hỗ trợ:

    • trừu tượng hóa — giữ lại chỉ những chi tiết quan trọng và bỏ qua những phần còn lại;
    • phân rã — chia nhỏ một vấn đề lớn thành các phần nhỏ hơn, dễ giải quyết hơn.

    Thiết kế

    Trong thiết kế, bạn lên kế hoạch cho giải pháp, thường sử dụng phân rã. Bạn có thể hiển thị các phần dưới dạng hệ thống con trong sơ đồ cấu trúc (biểu đồ chia một hệ thống thành các ô nhỏ hơn).

    Lập trình và kiểm thử

    Trong lập trình, bạn viết mã chương trình. Bạn sử dụng kiểm thử lặp — kiểm tra các phần nhỏ đi kiểm tra lại nhiều lần khi xây dựng chúng. Trong kiểm thử, bạn chạy toàn bộ chương trình với dữ liệu kiểm thử để kiểm tra xem nó có hoạt động hay không.

    Vocabulary · ⁨Từ vựng⁩ Train · ⁨Luyện tập⁩
    English Tiếng Việt
    program development life cycle/ˈprəʊɡræm dɪˈveləpmənt laɪf ˈsaɪkl/ vòng đời phát triển phần mềm
    analysis/əˈnæləsɪs/ phân tích
    design/dɪˈzaɪn/ thiết kế
    coding/ˈkəʊdɪŋ/ lập trình
    testing/ˈtestɪŋ/ kiểm thử
    abstraction/əbˈstrækʃn/ trừu tượng hóa
    decomposition/ˌdiːkɒmpəˈzɪʃn/ decomposition
    sub-systems/sʌb ˈsɪstəmz/ hệ con
    structure diagram/ˈstrʌktʃə ˈdaɪəɡræm/ sơ đồ cấu trúc
    iterative testing/ˈɪtərətɪv ˈtestɪŋ/ kiểm thử lặp
    test data/test ˈdeɪtə/ dữ liệu kiểm thử
    flowchart/ˈfləʊtʃɑːt/ sơ đồ khối
    7.2

    Design tools · ⁨Công cụ thiết kế⁩

    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).
    Tiếng Việt

    Bạn có thể lên kế hoạch cho giải pháp theo ba cách chính.

    • một sơ đồ cấu trúc — hiển thị các phần của hệ thống và cách chúng gắn kết với nhau;
    • một sơ đồ luồng — sơ đồ sử dụng các hộp và mũi tên để hiển thị các bước theo thứ tự;
    • giả mã — các bước được viết bằng tiếng Anh đơn giản, giống như mã (không phải là ngôn ngữ thật).
    Sơ đồ luồng để cộng các số từ 1 đến n, với biểu tượng bắt đầu/kết thúc, nhập/xuất, quy trình và quyết định, cùng bảng chú giải tên mỗi hình dạng
    Sơ đồ luồng cho thuật toán tổng, sử dụng các ký hiệu tiêu chuẩn (bắt đầu/kết thúc, nhập/xuất, quy trình, quyết định)
    7.3

    Algorithms · ⁨Thuật toán⁩

    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.

    Tiếng Việt
    Thuật toán sắp xếp nổi bọt, qua từng lượt

    Một thuật toán là một tập hợp các bước, theo đúng thứ tự, giải quyết một vấn đề. Mọi thuật toán đều có thể chia thành ba phần:

    • đầu vào — dữ liệu đi vào;
    • xử lý — công việc thực hiện trên dữ liệu;
    • đầu ra — kết quả đầu ra.

    Điều này được gọi là phân rã thành đầu vào, quá trình và đầu ra. Ví dụ, cho "tìm điểm trung bình của ba điểm số": đầu vào là ba điểm số; quá trình là cộng chúng lại và chia cho 3; đầu ra là điểm trung bình.

    Ba ô — ĐẦU VÀO (3 điểm số), XỬ LÝ (cộng lại, chia cho 3), ĐẦU RA (điểm trung bình) — nối với nhau bằng mũi tên
    Mọi thuật toán đều phân rã thành đầu vào, xử lý và đầu ra — ở đây, tìm điểm trung bình của ba điểm số
    Vocabulary · ⁨Từ vựng⁩ Train · ⁨Luyện tập⁩
    English Tiếng Việt
    bubble sort/ˈbʌbl sɔːt/ bubble sort
    totalling/ˈtəʊtəlɪŋ/ tổng hợp
    counting/ˈkaʊntɪŋ/ đếm
    maximum/ˈmæksɪməm/ tối đa
    minimum/ˈmɪnɪməm/ tối thiểu
    7.4

    Validation and verification · ⁨Xác thực và kiểm chứng⁩

    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.
    Tiếng Việt

    Khi dữ liệu được nhập, bạn kiểm tra nó để giảm thiểu sai sót.

    Validation kiểm tra xem dữ liệu có hợp lý và tuân theo các quy tắc hay không. Nó không thể xác minh tính đúng đắn của dữ liệu, mà chỉ đảm bảo dữ liệu đó được phép.

    Kiểm tra hợp lệ Điều nó kiểm tra
    kiểm tra phạm vi giá trị nằm giữa một giá trị tối thiểu và tối đa được phép
    kiểm tra độ dài số lượng ký tự là hợp lệ (ví dụ: mật khẩu ≥ 8)
    kiểm tra kiểu dữ liệu thuộc đúng kiểu (ví dụ: số, không phải chữ cái)
    kiểm tra sự hiện diện thông tin đã được nhập thực sự (không để trống)
    kiểm tra định dạng dữ liệu ở đúng mẫu (ví dụ: ngày tháng dd/mm/yyyy)
    số kiểm tra một chữ số bổ sung xác nhận số đã được nhập chính xác

    Verification kiểm tra xem dữ liệu có được nhập hoặc sao chép chính xác hay không (không có sai sót khi gõ). Hai phương pháp:

    • kiểm tra trực quan — người so sánh dữ liệu vừa gõ với bản gốc;
    • nhập hai lần — dữ liệu được nhập hai lần và hai bản sao được đối chiếu.
    Vocabulary · ⁨Từ vựng⁩ Train · ⁨Luyện tập⁩
    English Tiếng Việt
    validation/ˌvælɪˈdeɪʃn/ xác minh tính hợp lệ
    range check/reɪndʒ tʃek/ kiểm tra phạm vi
    length check/leŋθ tʃek/ kiểm tra độ dài
    type check/taɪp tʃek/ kiểm tra kiểu
    presence check/ˈprezəns tʃek/ kiểm tra sự hiện diện
    format check/ˈfɔːmæt tʃek/ kiểm tra định dạng
    check digit/tʃek ˈdɪdʒɪt/ chữ số kiểm tra
    verification/ˌverɪfɪˈkeɪʃn/ xác minh
    visual check/ˈvɪʒuːəl tʃek/ kiểm tra trực quan
    double entry/ˈdʌbl ˈentri/ nhập đôi
    7.5

    Trace tables · ⁨Bảng truy vết⁩

    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.

    Tiếng Việt

    Một bảng truy vết ghi lại giá trị của từng biến khi thuật toán chạy, từng bước một. Nó giúp bạn:

    Bảng truy vết với các cột count, total, output
    Một bảng theo dõi ghi lại giá trị của mỗi biến khi chương trình chạy.
    • kiểm tra xem thuật toán có hoạt động chính xác hay không;
    • xác định thuật toán làm gì bằng cách theo dõi nó với dữ liệu đầu vào cho trước.

    Ví dụ: truy vết thuật toán này với đầu vào 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

    Bảng truy vết cho thấy thuật toán cộng dồn từ 1 đến n. Với đầu vào 5, kết quả là 15.

    Ví dụ giải. Truy vết thuật toán này và đưa ra kết quả.

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

    DIV chỉ lấy phần nguyên của phép chia. Lấy một dòng cho mỗi vòng lặp: x trở thành 10 (đếm 1), sau đó 5 (đếm 2), tiếp theo 2 (đếm 3), rồi 1 (đếm 4). Bây giờ x > 1 là sai, nên vòng lặp dừng lại và kết quả đầu ra là 4. Hai thói quen bảo vệ điểm số này: kiểm tra điều kiện trước mỗi vòng lặp thay vì sau, và viết một dòng mới cho mọi vòng lặp - việc cố gắng giữ các giá trị trong đầu chính là nguyên nhân khiến bản đồ chạy sai.

    Explore · ⁨Khám phá⁩

    A trace table · ⁨Bảng theo dõi⁩

    Step through the loop and fill in the trace table, one row per pass. · ⁨Lặp qua vòng lặp và điền vào bảng theo dõi, mỗi hàng tương ứng với một lần chạy.⁩

    Vocabulary · ⁨Từ vựng⁩ Train · ⁨Luyện tập⁩
    English Tiếng Việt
    pseudocode/ˈsuːdəʊkəʊd/ pseudocode (giả mã)
    algorithm/ˈælɡərɪθəm/ thuật toán
    input/ˈɪnpʊt/ đầu vào
    processing/ˈprəʊsesɪŋ/ xử lý
    output/ˈaʊtpʊt/ đầu ra
    trace table/treɪs ˈteɪbl/ bảng theo dõi (trace table)
    normal/ˈnɔːml/ pháp tuyến
    abnormal/əbˈnɔːml/ bất thường, dị thường
    extreme/ekˈstriːm/ cực đoan
    boundary/ˈbaʊndəri/ biên giới
    7.6

    Test data · ⁨Dữ liệu thử nghiệm⁩

    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
    Tiếng Việt

    Dữ liệu thử nghiệm là dữ liệu bạn sử dụng để kiểm tra chương trình. Có bốn loại bạn cần biết.

    Loại Ý nghĩa Ví dụ (tuổi 0–120 được phép)
    bình thường dữ liệu hợp lý nên được chấp nhận 25
    bất thường dữ liệu sai nên bị từ chối -4 hoặc "cat"
    cực trị giá trị lớn nhất và nhỏ nhất vẫn còn được phép 0 và 120
    biên các giá trị ở hai bên giới hạn (một bên được phép, một bên không) 120 và 121
    7.7

    Standard methods of solution · ⁨Phương pháp giải chuẩn⁩

    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.
    Tiếng Việt

    Bạn cần biết các thuật toán phổ biến này.

    Tìm kiếm tuyến tính

    Tìm kiếm tuyến tính kiểm tra từng mục trong danh sách, lần lượt từng cái, cho đến khi tìm thấy giá trị mong muốn hoặc đạt hết cuối cùng.

    Found ← FALSE
    FOR I ← 0 TO 9
        IF List[I] = SearchValue
          THEN
            Found ← TRUE
        ENDIF
    NEXT I
    OUTPUT Found
    
    Danh sách tám số đang được quét từ trái sang phải, tìm kiếm số 5; bốn số đầu không khớp và số thứ năm được tìm thấy
    Tìm kiếm tuyến tính kiểm tra từng mục lần lượt từ đầu cho đến khi tìm thấy giá trị

    Sắp xếp bọt

    Sắp xếp bọt sắp xếp một danh sách theo thứ tự. Nó so sánh từng cặp mục liền kề và hoán đổi nếu chúng ở vị trí sai. Quá trình này lặp lại cho đến khi không cần hoán đổi nào nữa.

    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
    
    Danh sách nơi cặp đầu tiên 5 và 2 không đúng thứ tự, được hiển thị hoán đổi thành 2 và 5, với ghi chú lặp lại cho mỗi cặp
    Sắp xếp bọt so sánh từng cặp liền kề và hoán đổi nếu không đúng thứ tự, lặp lại cho đến khi sắp xếp xong

    Tổng hợp và đếm

    • tổng hợp — liên tục cộng các giá trị vào tổng tích lũy (Total ← Total + Value).
    • đếm — cộng thêm 1 vào bộ đếm mỗi khi một sự kiện xảy ra (Count ← Count + 1).

    Giá trị lớn nhất, nhỏ nhất và trung bình

    • để tìm giá trị lớn nhất: giữ lại giá trị lớn nhất đã gặp cho đến nay.
    • để tìm giá trị nhỏ nhất: giữ lại giá trị nhỏ nhất đã gặp cho đến nay.
    • để tìm trung bình: chia tổng số cho số lượng giá trị.
    Total ← 0
    FOR I ← 0 TO 9
        Total ← Total + List[I]
    NEXT I
    Average ← Total / 10
    OUTPUT Average
    
    Vocabulary · ⁨Từ vựng⁩ Train · ⁨Luyện tập⁩
    English Tiếng Việt
    linear search/ˈlɪnɪə sɜːtʃ/ tìm kiếm tuyến tính
    average/ˈævrɪdʒ/ trung bình
    7.8

    Exam tips · ⁨Mẹo làm bài thi⁩

    English
    • 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).
    Tiếng Việt
    • Học bốn giai đoạn vòng đời: phân tích → thiết kế → lập mã → thử nghiệm. Trừu tượng hóa giữ lại những chi tiết quan trọng; phân rã chia bài toán thành các phần nhỏ hơn.
    • Validation kiểm tra dữ liệu hợp lý (kiểm tra phạm vi, độ dài, kiểu, sự hiện diện, định dạng); verification kiểm tra dữ liệu đã được sao chép chính xác (kiểm tra trực quan hoặc nhập hai lần).
    • Học bốn loại dữ liệu thử nghiệm: bình thường (chấp nhận), bất thường (từ chối), cực trị (giá trị lớn/nhỏ nhất còn được phép), biên (các giá trị ở hai bên giới hạn).
    • Để xác định thuật toán làm gì, hãy điền bảng truy vết — ghi lại giá trị của mọi biến tại mỗi bước.
    • Biết các thuật toán chuẩn: tìm kiếm tuyến tính (kiểm tra từng mục lần lượt) và sắp xếp bọt (hoán đổi các cặp liền kề cho đến khi không cần hoán đổi nữa).
  • 8

    Programming · ⁨Lập trình⁩

    Watch lesson · ⁨Xem bài học⁩
    8.1

    Variables and constants

    Syllabus · ⁨Chương trình⁩
    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
    Tiếng Việt
    Thí sinh cần có thể: Ghi chú và hướng dẫn
    1 Khai báo và sử dụng biến và hằng số
    2 Hiểu và sử dụng các kiểu dữ liệu cơ bản • Bao gồm: – số nguyên – số thực – ký tự – chuỗi – Boolean
    3 Hiểu và sử dụng đầu vào và đầu ra
    4 (a) Hiểu và sử dụng khái niệm sự tuần tự
    (b) Hiểu và sử dụng khái niệm sự lựa chọn • Bao gồm: – lệnh IF – lệnh CASE
    (c) Hiểu và sử dụng khái niệm lặp lại • Bao gồm: – vòng lặp kiểm soát bởi đếm – vòng lặp tiền điều kiện – vòng lặp hậu điều kiện
    (d) Hiểu và sử dụng các khái niệm cộng tổng và đếm số
    (e) Hiểu và sử dụng khái niệm xử lý chuỗi • Bao gồm: – độ dài – chuỗi con – hoa – thường • Ký tự đầu tiên của chuỗi có thể là vị trí 0 hoặc 1
    (f) Hiểu và sử dụng toán tử số học, liên hệ và logic • Số học, giới hạn ở: – + – – / * ^ (lũy thừa) MOD DIV • Liên hệ, giới hạn ở: = < – <= – > >= <> (không bằng) • Logic, giới hạn ở: AND OR NOT
    5 Hiểu và sử dụng câu lệnh lồng nhau • Bao gồm: câu lệnh lựa chọn lồng nhau và lặp lồng nhau • Thí sinh sẽ không cần viết nhiều hơn ba mức lồng nhau
    6 (a) Hiểu khái niệm về thủ tục, hàm và tham số (b) Định nghĩa và sử dụng thủ tục và hàm, có hoặc không có tham số (c) Hiểu và sử dụng biến cục bộ và biến toàn cục • Thủ tục và hàm có thể có tối đa ba tham số
    7 Hiểu và sử dụng thủ tục thư viện • Bao gồm: – MOD – DIV – ROUND – RANDOM
    8 Hiểu cách tạo ra một chương trình dễ bảo trì • Bao gồm việc sử dụng phù hợp: – tên định nghĩa có ý nghĩa – tính năng bình luận do ngôn ngữ lập trình cung cấp – thủ tục và hàm – bình luận về cú pháp liên quan và phù hợp • Sử dụng tên định nghĩa có ý nghĩa cho: – biến – hằng – mảng – thủ tục và hàm

    Source: Cambridge International syllabus · ⁨Nguồn: Chương trình Cambridge International⁩

    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 · ⁨Khám phá⁩

    Variables and assignment · ⁨Biến và gán giá trị⁩

    Step through the lines and watch each variable take its new value. · ⁨Lặp qua từng dòng và quan sát cách mỗi biến nhận giá trị mới.⁩

    Vocabulary · ⁨Từ vựng⁩ Train · ⁨Luyện tập⁩
    English Tiếng Việt
    variable/ˈveərɪəbl/ biến
    constant/ˈkɒnstənt/ không đổi
    declare/dɪˈkleə/ khai báo
    8.1

    Data types

    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 · ⁨Từ vựng⁩ Train · ⁨Luyện tập⁩
    English Tiếng Việt
    data type/ˈdeɪtə taɪp/ kiểu dữ liệu
    integer/ˈɪntɪdʒə/ integer
    real/rɪəl/ số thực
    char/tʃɑː/ char (ký tự)
    string/strɪŋ/ chuỗi ký tự
    Boolean/ˈbuːlɪən/ Boolean
    8.1

    Input and output

    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 · ⁨Từ vựng⁩ Train · ⁨Luyện tập⁩
    English Tiếng Việt
    input/ˈɪnpʊt/ đầu vào
    output/ˈaʊtpʊt/ đầu ra
    8.1

    The three basic structures

    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 · ⁨Khám phá⁩

    How an IF … ELSE IF ladder decides · ⁨Cách một thang IF … ELSE IF đưa ra quyết định⁩

    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. · ⁨Các điều kiện được kiểm tra từ trên xuống dưới; ĐẦU TIÊN đáp ứng điều kiện sẽ chạy và phần còn lại bị bỏ qua. Kéo điểm số và xem nhánh nào sáng lên.⁩

    Explore · ⁨Khám phá⁩

    Selection · ⁨Sự lựa chọn⁩

    Change the value and watch which branch runs — selection in action. · ⁨Thay đổi giá trị và xem nhánh nào được thực thi — minh họa cho câu lệnh chọn lựa.⁩

    Vocabulary · ⁨Từ vựng⁩ Train · ⁨Luyện tập⁩
    English Tiếng Việt
    sequence/ˈsiːkwəns/ dãy (sequence)
    selection/sɪˈlekʃn/ chọn lọc
    iteration/ˌɪtəˈreɪʃn/ lặp lại
    loop/luːp/ vòng lặp
    count-controlled loop/kaʊnt kənˈtrəʊld luːp/ vòng lặp điều khiển bằng đếm
    pre-condition loop/priː kənˈdɪʃn luːp/ vòng lặp tiền điều kiện
    post-condition loop/pəʊst kənˈdɪʃn luːp/ vòng lặp hậu điều kiện
    8.1

    Totalling and counting

    • 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 · ⁨Từ vựng⁩ Train · ⁨Luyện tập⁩
    English Tiếng Việt
    totalling/ˈtəʊtəlɪŋ/ tổng hợp
    counting/ˈkaʊntɪŋ/ đếm
    8.1

    Operators

    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 · ⁨Từ vựng⁩ Train · ⁨Luyện tập⁩
    English Tiếng Việt
    remainder/rɪˈmeɪndə/ phần dư
    8.1

    String handling

    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 · ⁨Khám phá⁩

    SUBSTRING: take part of a string · ⁨SUBSTRING: lấy một phần của chuỗi⁩

    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. · ⁨Ký tự đầu tiên ở vị trí 1. SUBSTRING(Word, Start, Length) lấy Length ký tự bắt đầu từ Start — kéo hai tay cầm và đọc cú gọi tạo ra.⁩

    Vocabulary · ⁨Từ vựng⁩ Train · ⁨Luyện tập⁩
    English Tiếng Việt
    substring/ˈsʌbstrɪŋ/ chuỗi con
    upper case/ˈʌpə keɪs/ chữ in hoa
    lower case/ˈləʊə keɪs/ chữ in thường
    length/leŋθ/ chiều dài
    8.1

    Nested statements

    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 · ⁨Từ vựng⁩ Train · ⁨Luyện tập⁩
    English Tiếng Việt
    nested statement/ˈnestɪd ˈsteɪtmənt/ câu lệnh lồng nhau
    8.1

    Procedures and functions

    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 · ⁨Từ vựng⁩ Train · ⁨Luyện tập⁩
    English Tiếng Việt
    procedure/prəˈsiːdʒə/ thủ tục
    function/ˈfʌŋkʃn/ hàm
    parameter/pəˈræmɪtə/ parameter
    local variable/ˈləʊkl ˈveərɪəbl/ biến cục bộ
    global variable/ˈɡləʊbl ˈveərɪəbl/ biến toàn cục
    8.1

    Library routines

    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 · ⁨Từ vựng⁩ Train · ⁨Luyện tập⁩
    English Tiếng Việt
    library routine/ˈlaɪbrəri ruːˈtiːn/ thư viện thủ tục
    8.1

    Writing a maintainable program

    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 · ⁨Từ vựng⁩ Train · ⁨Luyện tập⁩
    English Tiếng Việt
    maintainable/meɪnˈteɪnəbl/ có thể duy trì
    meaningful identifiers/ˈmiːnɪŋfl aɪˈdentɪfaɪəz/ tên gọi có ý nghĩa
    comments/ˈkɒments/ comment
    8.2

    Arrays

    Syllabus · ⁨Chương trình⁩
    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
    Tiếng Việt
    Thí sinh cần có thể: Ghi chú và hướng dẫn
    1 Khai báo và sử dụng mảng một chiều (1D) và mảng hai chiều (2D)
    2 Hiểu cách sử dụng mảng • Bao gồm việc sử dụng biến làm chỉ mục trong mảng
    3 Ghi giá trị vào, và đọc giá trị từ, một mảng bằng cách lặp lại • Chỉ mục đầu tiên có thể là 0 hoặc 1 • Bao gồm cả lặp lại lồng nhau

    Source: Cambridge International syllabus · ⁨Nguồn: Chương trình Cambridge International⁩

    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 · ⁨Khám phá⁩

    Arrays · ⁨Mảng⁩

    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]. · ⁨Chọn một hàng và một cột để đọc một ô. Mảng Cambridge đếm từ 1, và phần tử 2-D được viết bằng MỘT cặp ngoặc vuông — Grid[2, 3].⁩

    Vocabulary · ⁨Từ vựng⁩ Train · ⁨Luyện tập⁩
    English Tiếng Việt
    array/əˈreɪ/ mảng (array)
    index/ˈɪndeks/ index
    one-dimensional (1D) array/wʌn daɪˈmenʃənl əˈreɪ/ mảng một chiều (1D)
    two-dimensional (2D) array/tuː daɪˈmenʃənl əˈreɪ/ mảng hai chiều (2D)
    8.3

    File handling

    Syllabus · ⁨Chương trình⁩
    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
    Tiếng Việt
    Thí sinh cần có thể: Ghi chú và hướng dẫn
    1 Hiểu mục đích của việc lưu trữ dữ liệu trong một tệp tin để chương trình sử dụng
    2 Mở, đóng và sử dụng tệp tin để đọc và ghi • Bao gồm: – đọc và ghi từng mục dữ liệu – đọc và ghi một dòng văn bản

    Source: Cambridge International syllabus · ⁨Nguồn: Chương trình Cambridge International⁩

    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 · ⁨Từ vựng⁩ Train · ⁨Luyện tập⁩
    English Tiếng Việt
    file/faɪl/ tệp
    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 · ⁨Cơ sở dữ liệu⁩

    Watch lesson · ⁨Xem bài học⁩
    Syllabus · ⁨Chương trình⁩
    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
    Tiếng Việt
    Thí sinh cần có thể: Ghi chú và hướng dẫn
    1 Định nghĩa một cơ sở dữ liệu bảng đơn từ các yêu cầu lưu trữ dữ liệu đã cho • Bao gồm: – trường – bản ghi – xác thực
    2 Gợi ý các kiểu dữ liệu cơ bản phù hợp • Bao gồm: – văn bản/alphanumeric – ký tự – Boolean – số nguyên – số thực – ngày/giờ
    3 Hiểu mục đích của khóa chính và xác định khóa chính phù hợp cho bảng cơ sở dữ liệu đã cho
    4 Đọc, hiểu và hoàn thành ngôn ngữ truy vấn có cấu trúc (SQL) để truy vấn dữ liệu được lưu trữ trong một bảng cơ sở dữ liệu đơn • Giới hạn ở: – SELECT – FROM – WHERE – ORDER BY DESCENDING – ORDER BY ASCENDING – SUM – COUNT – AND – OR • Xác định kết quả trả về bởi một câu lệnh SQL sẽ truy vấn nội dung đã cho của bảng cơ sở dữ liệu

    Source: Cambridge International syllabus · ⁨Nguồn: Chương trình Cambridge International⁩

    9.1

    What is a database? · ⁨Cơ sở dữ liệu là gì?⁩

    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.

    Tiếng Việt

    Một cơ sở dữ liệu là nơi lưu trữ dữ liệu có tổ chức, giúp dễ dàng tìm kiếm, sắp xếp và cập nhật. Trong kỳ thi IGCSE, bạn sẽ làm việc với cơ sở dữ liệu một bảng — tất cả dữ liệu được lưu trong một bảng duy nhất.

    Các ngăn kéo nhỏ có nhãn xếp thành hàng trong danh mục thẻ thư viện
    Danh mục thẻ thư viện là một cơ sở dữ liệu trên giấy — các bản ghi mà bạn có thể tìm kiếm và sắp xếp theo chỉ mục
    Các hàng máy chủ trong trung tâm dữ liệu
    Các cơ sở dữ liệu lớn hiện đại được lưu trữ trên các máy chủ trong trung tâm dữ liệu
    9.2

    Records and fields · ⁨Bản ghi và trường dữ liệu⁩

    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.

    Tiếng Việt

    Bảng cơ sở dữ liệu được tạo thành từ các bản ghi và các trường dữ liệu.

    • Một bản ghi là một hàng trong bảng — toàn bộ dữ liệu về một đối tượng cụ thể (ví dụ: một học sinh).
    • Một trường dữ liệu là một cột trong bảng — một mảnh thông tin mà mọi bản ghi đều có (ví dụ: "Tên").
    StudentID FirstName DateOfBirth FormClass FeesPaid
    1 Amy 14/03/2009 10A TRUE
    2 Ben 02/11/2008 10B FALSE

    Ở đây, mỗi hàng là một bản ghi, và mỗi cột là một trường dữ liệu.

    Bảng Học sinh với mỗi hàng được dán nhãn là bản ghi, mỗi cột là trường dữ liệu, và cột StudentID được làm nổi bật là khóa chính
    Mỗi hàng là một bản ghi và mỗi cột là một trường dữ liệu; khóa chính (StudentID) là duy nhất cho mỗi bản ghi
    9.3

    Data types for fields · ⁨Các loại dữ liệu cho trường⁩

    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
    Tiếng Việt

    Mỗi trường lưu trữ một loại dữ liệu. Bạn chọn loại phù hợp nhất với dữ liệu đó.

    Các loại trường: văn bản (một cái tên), số (tuổi), ngày/giờ (ngày sinh), boolean (có/không)
    Các kiểu trường: văn bản, số, ngày/giờ và boolean
    Loại dữ liệu Dùng cho Ví dụ
    văn bản/alphanumeric chữ cái, chữ số và ký hiệu "10A", "Amy"
    ký tự một ký tự đơn lẻ 'M'
    Boolean một trong hai giá trị TRUE / FALSE
    nguyên (integer) một số nguyên 42
    thực (real) một số có dấu thập phân 3.5
    ngày/giờ một ngày tháng hoặc thời gian 14/03/2009
    Vocabulary · ⁨Từ vựng⁩ Train · ⁨Luyện tập⁩
    English Tiếng Việt
    database/ˈdeɪtəbeɪs/ cơ sở dữ liệu
    single-table database/ˈsɪŋɡl ˈteɪbl ˈdeɪtəbeɪs/ cơ sở dữ liệu bảng đơn
    record/ˈrekɔːd/ bản ghi
    field/fiːld/ trường
    data type/ˈdeɪtə taɪp/ kiểu dữ liệu
    text/alphanumeric/tekst ˌælfənjuːˈmerɪk/ văn bản / chữ số
    character/ˈkærɪktə/ tính cách
    Boolean/ˈbuːlɪən/ Boolean
    integer/ˈɪntɪdʒə/ integer
    real/rɪəl/ số thực
    date/time/deɪt taɪm/ ngày / giờ
    primary key/ˈpraɪməri kiː/ khóa chính
    unique/juːˈniːk/ duy nhất
    9.4

    The primary key · ⁨Khóa chính⁩

    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.

    Tiếng Việt

    Một khóa chính là một trường chứa giá trị duy nhất cho mỗi bản ghi. Không có hai bản ghi nào có cùng khóa chính, vì vậy nó cho phép bạn xác định chính xác một bản ghi.

    Trong bảng trên, StudentID là một khóa chính tốt vì mỗi học sinh có một con số khác nhau. Một trường như FormClass sẽ là một khóa chính kém, vì nhiều học sinh cùng thuộc một lớp.

    9.5

    Validation in a database · ⁨Xác thực dữ liệu trong cơ sở dữ liệu⁩

    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.)

    Tiếng Việt

    Khi dữ liệu được nhập vào cơ sở dữ liệu, các kiểm tra xác thực đảm bảo dữ liệu hợp lý — ví dụ: kiểm tra phạm vi cho trường tuổi, hoặc kiểm tra sự tồn tại để đảm bảo trường không để trống. (Bạn đã gặp các kiểm tra này trong chủ đề 7.)

    Kiểm tra phạm vi trên trường tuổi chấp nhận 16 nhưng từ chối 200
    Kiểm tra khoảng giá trị chấp nhận các giá trị hợp lý và loại bỏ phần còn lại
    Vocabulary · ⁨Từ vựng⁩ Train · ⁨Luyện tập⁩
    English Tiếng Việt
    validation/ˌvælɪˈdeɪʃn/ xác minh tính hợp lệ
    structured query language/ˈstrʌktʃəd ˈkwɪərɪ ˈlæŋɡwɪdʒ/ ngôn ngữ truy vấn có cấu trúc
    9.6

    Structured Query Language (SQL) · ⁨Ngôn ngữ truy vấn có cấu trúc (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.

    Tiếng Việt

    Ngôn ngữ truy vấn có cấu trúc (SQL) là ngôn ngữ dùng để truy vấn cơ sở dữ liệu — để lấy ra các bản ghi bạn mong muốn. Bạn cần hiểu và viết được các đoạn mã SQL.

    SELECT, FROM và WHERE

    • SELECT chỉ định các trường nào cần hiển thị.
    • FROM chỉ định bảng nào cần sử dụng.
    • WHERE đưa ra một điều kiện, để chỉ những bản ghi khớp mới được hiển thị.
    Một câu lệnh SQL: SELECT name FROM students WHERE age > 15
    SELECT chọn trường, FROM nêu tên bảng, WHERE đặt điều kiện
    SELECT FirstName, FormClass
    FROM Student
    WHERE FeesPaid = TRUE;
    

    Câu này hiển thị tên và lớp của tất cả các học sinh đã thanh toán học phí.

    Sử dụng * để chọn tất cả các trường:

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

    ORDER BY

    ORDER BY sắp xếp kết quả. Sử dụng ASC để tăng dần (nhỏ nhất trước, A→Z) hoặc DESC để giảm dần (lớn nhất trước, Z→A).

    SELECT FirstName, DateOfBirth
    FROM Student
    ORDER BY DateOfBirth ASC;
    

    AND và OR

    Kết nối các điều kiện bằng AND (cả hai đều phải đúng) hoặc OR (ít nhất một phải đúng).

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

    SUM và COUNT

    • SUM cộng tổng các giá trị trong một trường số.
    • COUNT đếm số lượng bản ghi khớp.
    SELECT COUNT(StudentID)
    FROM Student
    WHERE FeesPaid = FALSE;
    

    Câu này đếm số học sinh chưa thanh toán. SUM hoạt động tương tự nhưng cộng một trường số thay vì đếm số hàng.

    Tính toán đầu ra

    Để tìm đầu ra của một đoạn mã SQL, hãy đọc theo thứ tự sau:

    1. FROM — bảng nào;
    2. WHERE — giữ lại chỉ những bản ghi khớp với điều kiện;
    3. SELECT — chỉ hiển thị các trường đã chọn;
    4. ORDER BY — sắp xếp kết quả theo thứ tự.
    Bốn bước theo thứ tự: FROM (bảng nào), WHERE (giữ lại các dòng khớp), SELECT (hiển thị các trường đã chọn), ORDER BY (sắp xếp kết quả)
    Đọc một truy vấn SQL theo thứ tự này: FROM (bảng nào), WHERE (những hàng nào), SELECT (những trường nào), ORDER BY (sắp xếp)

    Theo các bước này, bạn có thể xác định chính xác những hàng và cột mà truy vấn sẽ trả về.

    Ví dụ minh họa. Một bảng Book có các trường là Title, Author, Price và InStock. Viết một truy vấn hiển thị tiêu đề và giá của tất cả các sách của Orwell đang có sẵn, sắp xếp từ rẻ nhất lên đắt nhất.

    SELECT Title, Price
    FROM Book
    WHERE Author = 'Orwell' AND InStock = TRUE
    ORDER BY Price ASC;
    

    Xây dựng theo thứ tự đọc: FROM đặt tên bảng; WHERE chỉ giữ lại các bản ghi khớp, và vì có hai điều kiện nên chúng cần AND; SELECT chỉ hiển thị hai trường được yêu cầu; ORDER BY … ASC sắp xếp chúng. Giá trị văn bản phải nằm trong dấu ngoặc kép, và chỉ những trường mà câu hỏi yêu cầu mới thuộc về SELECT - thêm Author chỉ vì bạn đã lọc theo nó là cách phổ biến nhất để mất điểm ở đây.

    Explore · ⁨Khám phá⁩

    SELECT … WHERE

    Step through a query: WHERE filters rows, SELECT picks columns. · ⁨Lặp qua truy vấn: WHERE lọc các hàng, SELECT chọn các cột.⁩

    Vocabulary · ⁨Từ vựng⁩ Train · ⁨Luyện tập⁩
    English Tiếng Việt
    query/ˈkwɪərɪ/ truy vấn
    condition/kənˈdɪʃn/ điều kiện
    ascending/əˈsendɪŋ/ tăng dần
    descending/dɪˈsendɪŋ/ giảm dần
    9.7

    Exam tips · ⁨Mẹo làm bài thi⁩

    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.
    Tiếng Việt
    • Một bản ghi là một hàng (toàn bộ dữ liệu về một đối tượng); một trường là một cột (một mục mà mọi bản ghi đều có).
    • Một khóa chính phải duy nhất cho mỗi bản ghi, do đó nó chọn ra đúng một bản ghi (StudentID, không phải FormClass).
    • Học các phần SQL: SELECT (các trường nào), FROM (bảng nào), WHERE (điều kiện), ORDER BY (sắp xếp, ASC hoặc DESC).
    • Đọc một truy vấn theo thứ tự FROM → WHERE → SELECT → ORDER BY để xác định đầu ra của nó.
    • COUNT đếm số bản ghi khớp; SUM cộng tổng một trường số.
  • 10

    Boolean logic · ⁨Logic Boolean⁩

    Watch lesson · ⁨Xem bài học⁩
    Syllabus · ⁨Chương trình⁩
    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
    Tiếng Việt
    Thí sinh cần có thể: Ghi chú và hướng dẫn
    1 Identify and use the standard symbols for logic gates • Xem mục 4 để biết ký hiệu cổng logic
    2 Define and understand the functions of logic gates • Bao gồm: – NOT – AND – OR – NAND – NOR – XOR (EOR) – đầu ra nhị phân được tạo ra từ tất cả các đầu vào nhị phân có thể • NOT là cổng có một đầu vào • Tất cả các cổng khác giới hạn ở hai đầu vào
    3 (a) Sử dụng các cổng logic để tạo ra các mạch logic đã cho từ: (i) phát biểu vấn đề (ii) biểu thức logic (iii) bảng chân lý (b) Hoàn thành một bảng chân lý từ: (i) phát biểu vấn đề (ii) biểu thức logic (iii) mạch logic • Mạch phải được vẽ cho phát biểu đã cho, không rút gọn • Mạch logic sẽ bị giới hạn tối đa ba đầu vào và một đầu ra • Ví dụ về bảng chân lý với ba đầu vào, để hoàn thành: 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) Viết một biểu thức logic từ: (i) phát biểu vấn đề (ii) mạch logic (iii) bảng chân lý

    Source: Cambridge International syllabus · ⁨Nguồn: Chương trình Cambridge International⁩

    10.1

    What is Boolean logic? · ⁨Logic Boolean là gì?⁩

    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.

    Tiếng Việt

    Logic Boolean làm việc với các giá trị chỉ có thể là đúng hoặc sai. Trong điện tử, chúng được biểu diễn bằng 1 (đúng) và 0 (sai). Một cổng logic nhận một hoặc nhiều đầu vào này và đưa ra một đầu ra, tuân theo một quy tắc cố định.

    Một bảng chân lý liệt kê mọi tập hợp đầu vào có thể và đầu ra tương ứng cho từng tập. Bạn xây dựng nó bằng cách viết ra tất cả các tổ hợp đầu vào.

    Một mạch điện tử được xây dựng trên bảng thử nghiệm
    Các cổng logic được tạo thành từ các mạch điện tử như thế này, nơi mỗi cổng bật các tín hiệu 1 và 0
    10.2

    The six logic gates · ⁨Sáu loại cổng logic⁩

    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
    Tiếng Việt
    Một mạch logic đang hoạt động: bộ cộng bán phần

    Bạn phải biết sáu loại cổng. NOT có một đầu vào; tất cả các loại khác có hai đầu vào (A và B).

    Ký hiệu của sáu loại cổng logic — NOT, AND, OR, NAND, NOR và XOR — mỗi loại đều có các đầu vào được dán nhãn và một đầu ra
    Sáu loại cổng logic. Một vòng tròn nhỏ trên đầu ra có nghĩa là kết quả bị đảo ngược (NOT, NAND, NOR)
    Ba con chip máy tính màu đen nhỏ với các hàng chân kim loại, mỗi con đều in mã code
    Một chip logic thực tế: bên trong chứa các cổng logic như những cái trên trang này

    Cổng NOT

    Cổng NOT đảo ngược đầu vào. Đầu ra sẽ là 1 khi đầu vào là 0.

    A Output
    0 1
    1 0

    Cổng AND

    Cổng AND cho đầu ra 1 chỉ khi cả hai đầu vào đều là 1.

    Bảng chân lý cho AND: chỉ 1 AND 1 mới cho 1
    AND chỉ tạo ra 1 khi cả hai đầu vào đều là 1
    A B Output
    0 0 0
    0 1 0
    1 0 0
    1 1 1

    Cổng OR

    Cổng OR cho đầu ra 1 khi ít nhất một đầu vào là 1.

    Bảng chân lý cho OR: 0 OR 0 cho 0, những trường hợp còn lại đều cho 1
    OR tạo ra 1 khi bất kỳ đầu vào nào là 1
    A B Output
    0 0 0
    0 1 1
    1 0 1
    1 1 1

    Cổng NAND

    Cổng NAND là AND theo sau bởi NOT. Đầu ra là ngược lại so với AND.

    A B Output
    0 0 1
    0 1 1
    1 0 1
    1 1 0

    Cổng NOR

    Cổng NOR là OR theo sau bởi NOT. Đầu ra là ngược lại so với OR.

    A B Output
    0 0 1
    0 1 0
    1 0 0
    1 1 0

    Cổng XOR

    Cổng XOR (exclusive OR) cho đầu ra 1 khi các đầu vào khác nhau.

    A B Output
    0 0 0
    0 1 1
    1 0 1
    1 1 0
    Explore · ⁨Khám phá⁩

    The logic gates · ⁨Các cổng logic⁩

    Switch the inputs and pick a gate to see its output — AND, OR, NOT, NAND, NOR, XOR. · ⁨Chuyển đổi đầu vào và chọn một cổng để xem đầu ra — AND, OR, NOT, NAND, NOR, XOR.⁩

    Vocabulary · ⁨Từ vựng⁩ Train · ⁨Luyện tập⁩
    English Tiếng Việt
    Boolean logic/ˈbuːlɪən ˈlɒdʒɪk/ Logic Boolean
    logic gate/ˈlɒdʒɪk ɡeɪt/ cổng logic
    truth table/truːθ ˈteɪbl/ bảng chân lý
    NOT gate/nɒt ɡeɪt/ cổng NOT
    AND gate/ænd ɡeɪt/ cổng AND
    OR gate/ɔː ɡeɪt/ cổng OR
    NAND gate/nænd ɡeɪt/ cổng NAND
    NOR gate/nɔː ɡeɪt/ cổng NOR
    XOR gate/ˈeksɔː ɡeɪt/ Cổng XOR
    logic expression/ˈlɒdʒɪk ekˈspreʃn/ biểu thức logic
    10.3

    Logic expressions · ⁨Biểu thức logic⁩

    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.

    Tiếng Việt

    Một biểu thức logic mô tả một mạch bằng các ký tự và tên các cổng. Cách thông thường để viết các cổng:

    Gate In words
    NOT A NOT A
    A AND B A AND B
    A OR B A OR B

    Ví dụ, biểu thức (A AND B) OR (NOT C) có nghĩa là: thực hiện A AND B, thực hiện NOT C, sau đó OR hai kết quả lại với nhau.

    Biểu thức X bằng A AND B OR NOT C được vẽ dưới dạng mạch: một cổng AND nhận A và B, một cổng NOT nhận C, và một cổng OR kết hợp hai tín hiệu này để tạo ra đầu ra X
    Biểu thức X = (A AND B) OR (NOT C) được vẽ dưới dạng mạch logic
    Explore · ⁨Khám phá⁩

    Truth tables · ⁨Bảng chân lý⁩

    Build the truth table for AND, OR, XOR and NOT — the logic behind every expression. · ⁨Xây dựng bảng chân lý cho AND, OR, XOR và NOT — nền tảng logic của mọi biểu thức.⁩

    10.4

    Logic circuits · ⁨Mạch logic⁩

    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.

    Tiếng Việt

    Một mạch logic nối các cổng lại với nhau để thực hiện một nhiệm vụ. Đầu ra của một cổng có thể trở thành đầu vào của cổng khác. Tại IGCSE, một mạch có tối đa ba đầu vào và một đầu ra.

    Một mạch logic: một cổng AND nhận đầu vào A và B cung cấp một đầu vào cho cổng OR, đầu vào còn lại của cổng OR là C, tạo ra đầu ra X
    Xây dựng mạch cho X = (A AND B) OR C — đầu ra của cổng AND cung cấp cho cổng OR

    Bạn phải có khả năng chuyển đổi giữa bốn dạng:

    • một phát biểu bài toán (mô tả bằng lời nói),
    • một biểu thức logic,
    • một mạch logic,
    • một bảng chân lý.

    Từ phát biểu bài toán đến mạch

    Đọc phát biểu và xác định các điều kiện cùng các từ logic (and, or, not). Ví dụ:

    Một báo động (X) kêu khi cửa mở (A) VÀ hệ thống được bật (B).

    Đây là X = A AND B, do đó bạn vẽ một cổng AND với các đầu vào A và B.

    Hoàn thành bảng chân lý từ mạch hoặc biểu thức

    Để điền vào bảng chân lý:

    1. Viết tất cả các tổ hợp đầu vào. Đối với ba đầu vào, có 8 hàng (từ 000 đến 111).
    2. Tính toán đầu ra của từng cổng theo thứ tự, một cột một lần.
    3. Cột cuối cùng là đầu ra cuối cùng.
    Ba đầu vào tạo ra hai nhân hai nhân hai bằng tám hàng; tám tổ hợp được liệt kê bằng cách đếm tăng dần theo nhị phân từ 000 đến 111, với cột cuối cùng đảo ngược ở mỗi hàng
    Ba đầu vào tạo ra tám hàng: every combination được đếm theo nhị phân
    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

    Thêm một cột "làm việc" ở giữa cho mỗi cổng giúp việc điền đầu ra cuối cùng dễ dàng hơn. Luôn vẽ mạch đúng y hệt như phát biểu nêu, không rút gọn.

    Ví dụ đã giải. Hoàn thành bảng chân lý cho X = (A AND B) OR (NOT C) ở hàng A = 1, B = 0, C = 0. Tính từ ngoài vào trong, một cổng logic mỗi lần. Đầu tiên A AND B = 1 VÀ 0 = 0, vì AND cần cả hai đầu vào đều là 1. Tiếp theo NOT C = KHÔNG 0 = 1. Cuối cùng OR hai kết quả: 0 HOẶC 1 = 1. Vậy X = 1. Gán mỗi cổng trung gian một cột riêng thay vì cố gắng tính toàn bộ biểu thức trong một bước: với ba đầu vào có $2^3 = 8$ hàng, và các cột trung gian chính là nơi phương pháp được thể hiện ngay cả khi đáp án cuối cùng bị sai.

    Vocabulary · ⁨Từ vựng⁩ Train · ⁨Luyện tập⁩
    English Tiếng Việt
    logic circuit/ˈlɒdʒɪk ˈsɜːkɪt/ mạch logic
    problem statement/ˈprɒbləm ˈsteɪtmənt/ phát biểu bài toán
    10.5

    Exam tips · ⁨Mẹo làm bài thi⁩

    English
    • 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.
    Tiếng Việt
    • Học thuộc tất cả sáu loại cổng và bảng chân lý của chúng: NOT, AND, OR, NAND (KHÔNG VÀ), NOR (KHÔNG HOẶC), XOR (đầu ra bằng 1 khi các đầu vào khác nhau).
    • Xây dựng bảng chân lý với tất cả các hàng đầu vào (2 đầu vào → 4 hàng, 3 đầu vào → 8 hàng), đếm theo nhị phân, và thêm một cột làm việc cho mỗi loại cổng.
    • Chuyển đổi đề bài thành biểu thức logic bằng cách xác định các từ AND / OR / NOT, sau đó vẽ nó đúng như viết — không rút gọn nó.
    • NAND và NOR tạo ra đầu ra ngược lại so với AND và OR; một vòng tròn nhỏ trên đầu ra của cổng nghĩa là kết quả bị đảo ngược.

Log in or create account · ⁨Đăng nhập hoặc tạo tài khoản⁩

IGCSE, A-Level & AP