Skip to content · ⁨Pular para o conteúdo⁩

Representação de informações

Ciência da Computação do A-Level · Topic 1 · ⁨Tópico 1⁩

Train · ⁨Treinar⁩
Video lesson for this topic · ⁨Videoaula para este tópico⁩ Open the video page · ⁨Abrir a página do vídeo⁩
22:30

Sistemas Numéricos & Dados

Esta foto. Esta música. Este próprio vídeo. Seu nome, suas mensagens, cada arquivo em cada dispositivo — dentro do computador, tudo isso não passa de uns e zeros.…

English narration · English + 中文 subtitles burned in · ⁨Narração em inglês · Legendas em inglês + 中文 gravadas⁩

1.1

Number systems · ⁨Sistemas numéricos⁩

Syllabus · ⁨Programa⁩
English
Candidates should be able to: Notes and guidance
Show understanding of binary magnitudes and the difference between binary prefixes and decimal prefixes Understand the difference between and use: • kibi and kilo • mebi and mega • gibi and giga • tebi and tera
Show understanding of different number systems Use the binary, denary, hexadecimal number bases and Binary Coded Decimal (BCD) and one’s complement and two’s complement representation for binary numbers
Convert an integer value from one number base/ representation to another
Perform binary addition and subtraction Using positive and negative binary integers
Show understanding of how overflow can occur
Describe practical applications where Binary Coded Decimal (BCD) and Hexadecimal are used
Show understanding of and be able to represent character data in its internal binary form, depending on the character set used Students are expected to be familiar with ASCII (American Standard Code for Information Interchange), extended ASCII and Unicode. Students will not be expected to memorise any particular character codes
Português
Os candidatos devem ser capazes de: Notas e orientações
Demonstrar compreensão das magnitudes binárias e da diferença entre prefixos binários e prefixos decimais Compreender a diferença entre e usar: • kibi e kilo • mebi e mega • gibi e giga • tebi e tera
Demonstrar compreensão de diferentes sistemas numéricos Usar as bases numéricas binário, decimal e hexadecimal e a representação Decimal Codificado por BCD (BCD), complemento de um e complemento de dois para números binários
Converter um valor inteiro de uma base numérica/representação para outra
Realizar adição e subtração binária Usando inteiros binários positivos e negativos
Demonstrar compreensão de como pode ocorrer o transbordamento
Descrever aplicações práticas onde são usados Decimal Codificado por BCD (BCD) e Hexadecimal
Demonstrar compreensão e ser capaz de representar dados de caracteres na sua forma binária interna, dependendo do conjunto de caracteres usado Os alunos devem estar familiarizados com ASCII (American Standard Code for Information Interchange), ASCII estendido e Unicode. Não se espera que memorizem códigos de caracteres específicos

Source: Cambridge International syllabus · ⁨Fonte: Programa Cambridge International⁩

English
Counting in binary: 0 to 15

The three number systems 数制 you must use:

  • denary 十进制 (decimal, base 10) — uses digits 0–9. Place values are powers of ten.
  • binary 二进制 (base 2) — uses 0 and 1. Place values are powers of two. Every byte 字节 is 8 bits 位.
  • hexadecimal 十六进制 (base 16) — uses 0–9 then A–F for 10–15. Each hex digit 数位 stands for exactly 4 bits.

Conversions

Denary → binary: keep dividing by 2 and record the remainders, read bottom-up. Or subtract the largest place value 位值 (power of 2) that fits.

Example: $558_{10}$: $558 = 512 + 32 + 8 + 4 + 2 = 2^{9} + 2^{5} + 2^{3} + 2^{2} + 2^{1}$. In 12 bits: 0010 0010 1110.

Binary → hex: group the bits into nibbles 半字节 (4 bits) from the right and convert each. 0010 0010 1110 → 2 2 E → 22E.

Hex → binary: replace each hex digit with its 4-bit pattern. Hex → denary: multiply each digit by its place value. 22E $= 2 \times 256 + 2 \times 16 + 14 = 558$.

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

$200 = 128 + 64 + 8$, so the binary is 11001000. In nibbles, 1100 1000 $= 12$ and $8$, i.e. $\text{C}$ and $8$, so the hexadecimal is C8.

How many bits?

Exam questions fix the register width 寄存器宽度 (8, 12 or 16 bits). Pad with leading zeros to that width: $558$ in 12 bits is 0010 0010 1110, never 10 0010 1110.

To find the minimum number of bits that can store a value, ask which place values you need:

  • an unsigned integer from $0$ to $2^{n} - 1$ needs $n$ bits: $200$ needs 8 bits (the top is $255$), $1000$ needs 10 bits (the top is $1023$), $16$ needs 5 bits (4 bits stop at $15$).
  • a signed two's-complement integer from $-2^{n-1}$ to $2^{n-1} - 1$ needs $n$ bits: $-200$ needs 9 bits, because 8 bits stop at $-128$.
  • one hexadecimal digit needs 4 bits, one BCD digit needs 4 bits, and one ASCII character needs 7 bits (8 for extended ASCII).

Binary vs decimal prefixes

Two prefix families look similar but differ — decimal (powers of 10) and binary (powers of 2):

Decimal (SI) Binary (memory)
kilo $= 10^{3}$ kibi (Ki) $= 2^{10} = 1024$
mega $= 10^{6}$ mebi (Mi) $= 2^{20}$
giga $= 10^{9}$ gibi (Gi) $= 2^{30}$
tera $= 10^{12}$ tebi (Ti) $= 2^{40}$

So a tebibyte (TiB) is slightly more than a terabyte (TB). A "1 TB" drive holds $10^{12}$ bytes, but an operating system that reports in TiB shows a smaller number.

Português
Contagem em binário: 0 a 15

Os três sistemas numéricos 数制 que deve dominar:

  • decimal 十进制 (base 10) — usa dígitos 0–9. Os lugares valoriais são potências de dez.
  • binário 二进制 (base 2) — usa 0 e 1. Os lugares valoriais são potências de dois. Cada byte 字节 tem 8 bits 位.
  • hexadecimal 十六进制 (base 16) — usa 0–9 seguidos de A–F para 10–15. Cada dígito hexadecimal representa exatamente 4 bits.
Contas num abaco tradicional
Um abaco representa números por lugar valorial — a mesma ideia subjacente ao decimal, binário e hexadecimal

Conversões

Decimal → binário: continue a dividir por 2 e registe os restos, lendo de baixo para cima. Ou subtraia o maior lugar valorial 位值 (potência de 2) que couber.

Exemplo: $558_{10}$: $558 = 512 + 32 + 8 + 4 + 2 = 2^{9} + 2^{5} + 2^{3} + 2^{2} + 2^{1}$. Em 12 bits: 0010 0010 1110.

Binário → hexadecimal: agrupe os bits em nibbles 半字节 (4 bits) da direita para a esquerda e converta cada um. 0010 0010 1110 → 2 2 E → 22E.

Hexadecimal → binário: substitua cada dígito hexadecimal por seu padrão de 4 bits. Hexadecimal → decimal: multiplique cada dígito por seu valor posicional. 22E $= 2 \times 256 + 2 \times 16 + 14 = 558$.

Exemplo resolvido. Converta o decimal 200 para binário de 8 bits, depois para hexadecimal.

$200 = 128 + 64 + 8$, então o binário é 11001000. Em nibbles, 1100 1000 $= 12$ e $8$, ou seja, $\text{C}$ e $8$, então o hexadecimal é C8.

Um gráfico de lugares valoriais binários para 200: as colunas 128, 64, 32, 16, 8, 4, 2, 1 contêm os bits 1,1,0,0,1,0,0,0; os dois meios bytes de 4 bits 1100 e 1000 tornam-se os dígitos hex C e 8, logo 200 = 11001000 = C8
Ler 200 pelos seus lugares valoriais, depois agrupar os bits em meios bytes para obter hex C8

Quantos bits?

As questões de exame fixam a largura do registrador 寄存器宽度 (8, 12 ou 16 bits). Preencha com zeros à esquerda até essa largura: $558$ em 12 bits é 0010 0010 1110, nunca 10 0010 1110.

Para encontrar o número mínimo de bits necessários para armazenar um valor, pergunte quais lugares valoriais precisa:

  • um inteiro sem sinal de $0$ a $2^{n} - 1$ precisa de $n$ bits: $200$ precisa de 8 bits (o topo é $255$), $1000$ precisa de 10 bits (o topo é $1023$), $16$ precisa de 5 bits (4 bits param em $15$).
  • um inteiro com sinal em complemento para dois de $-2^{n-1}$ a $2^{n-1} - 1$ precisa de $n$ bits: $-200$ precisa de 9 bits, pois 8 bits param em $-128$.
  • um dígito hexadecimal precisa de 4 bits, um dígito BCD precisa de 4 bits, e um carácter ASCII precisa de 7 bits (8 para ASCII expandido).

Prefijos binários vs decimais

Dois famílias de prefijos parecem semelhantes mas diferem — decimal (potências de 10) e binário (potências de 2):

Decimal (SI) Binário (memória)
quilo $= 10^{3}$ kibi (Ki) $= 2^{10} = 1024$
mega $= 10^{6}$ mebi (Mi) $= 2^{20}$
giga $= 10^{9}$ gibi (Gi) $= 2^{30}$
tera $= 10^{12}$ tebi (Ti) $= 2^{40}$

Assim, um tebibyte (TiB) é ligeiramente maior que um terabyte (TB). Um disco "1 TB" armazena $10^{12}$ bytes, mas um sistema operacional que relata em TiB mostra um número menor.

Explore · ⁨Explorar⁩

Binário, decimal e hexadecimal

Digite um número e veja-o em binário, decimal e hexadecimal ao mesmo tempo — e como os valores posicionais se somam.

Vocabulary · ⁨Vocabulário⁩ Train · ⁨Treinar⁩
English · ⁨Inglês⁩ Chinese · ⁨Chinês⁩ Pinyin
number system/ˈnʌmbə ˈsɪstəm/ 数制 shù zhì
binary/ˈbaɪnəri/ 二进制 èr jìn zhì
denary/ˈdiːnəri/ 十进制 shí jìn zhì
place value/pleɪs ˈvæljuː/ 位值 wèi zhí
byte/baɪt/ 字节 zì jié
bit/bɪt/ 位 wèi
hexadecimal/ˌheksəˈdesɪml/ 十六进制 shí liù jìn zhì
nibble/ˈnɪbl/ 半字节 bàn zì jié
register width/ˈredʒɪstə wɪtθ/ 寄存器宽度 jì cún qì kuān dù
1.1

Binary arithmetic · ⁨Aritmética binária⁩

English

Binary addition

Add column by column from the right, carrying as in denary:

Bit A Bit B Carry in Sum bit Carry out
0 0 0 0 0
0 0 1 1 0
0 1 0 1 0
0 1 1 0 1
1 1 0 0 1
1 1 1 1 1

Overflow 溢出 happens when the result needs more bits than the register 寄存器 can hold — the carry-out of the leftmost column is the overflow bit.

Worked example. Add the 8-bit unsigned integers $10110101$ and $01101100$, and comment on the result.

$10110101 + 01101100 = 1\,00100001$. The answer needs 9 bits, so it does not fit in an 8-bit register: overflow has occurred. A full answer names the error and says why, using the word size the question gave: "Overflow: the true result ($289$) is larger than the largest value an 8-bit register can hold ($255$), so the carry out of the most significant bit is lost and the stored result ($00100001 = 33$) is wrong."

Binary subtraction

The usual way is two's complement 补码 addition: to do $A - B$, form the two's complement of $B$ (invert every bit and add 1), then add, and discard any final carry-out.

To subtract $00011110$ from $01100100$ (unsigned 8-bit):

  • two's complement of $00011110$: invert → $11100001$, add 1 → $11100010$.
  • add to $01100100$: result $1\,01000110$ (9 bits) — discard the leading 1 → $01000110 = 70_{10}$. Check: $100 - 30 = 70$. ✓

Two's complement signed integers

In an $n$-bit two's-complement number:

  • the most significant bit 最高有效位 (MSB) is the sign bit 符号位: 0 = positive, 1 = negative.
  • to read a negative number: invert every bit, add 1, then negate.

So $11100010$ is negative; invert → $00011101$, add 1 → $00011110 = 30$, so it is $-30$. This is a signed integer 有符号整数 (unlike an unsigned 无符号 one). The range for $n$ bits is $-2^{n-1}$ to $+2^{n-1} - 1$; for 8 bits, $-128$ ($10000000$) to $+127$ ($01111111$).

The same bits mean different numbers depending on the agreed reading. As an unsigned integer every bit is a place value, so 8 bits run from $0$ to $255$; as a signed two's-complement integer the top bit is the sign, so the same 8 bits run from $-128$ to $+127$. The pattern $11111111$ is $255$ read one way and $-1$ read the other — nothing in the bits themselves says which.

The same byte read as unsigned and as signed: only the agreed interpretation tells them apart 8-bit two's complement: the sign bit splits the range into negative ($-128$ to $-1$) and positive ($0$ to $127$)

Worked example. What denary value does the 8-bit two's-complement number $10110100$ represent?

The MSB is 1, so it is negative. Invert → $01001011$, add 1 → $01001100 = 76$, so the value is $-76$. Check with place values: $-128 + 32 + 16 + 4 = -76$.

Worked example. Write $-108$ as a 12-bit two's-complement integer.

Start from $+108$ in 12 bits: $108 = 64 + 32 + 8 + 4$, so 0000 0110 1100. Invert every bit: 1111 1001 0011. Add 1: 1111 1001 0100. Check with place values, where the top bit is worth $-2^{11} = -2048$: $-2048 + 1024 + 512 + 256 + 128 + 16 + 4 = -108$. ✓

For 12 bits the range is $-2048$ (1000 0000 0000) to $+2047$ (0111 1111 1111). Questions that ask for the smallest and largest values want these two patterns, so learn the rule: the most negative number is a 1 followed by zeros; the most positive is a 0 followed by ones.

An arithmetic shift 算术移位 moves every bit left or right but keeps the sign: a shift right by one place halves the value and copies the sign bit into the empty space on the left, so a negative number stays negative (1111 1001 0100 shifted right three places is 1111 1111 0010, which is $-14$: $-108 / 8 = -13.5$, and a shift right rounds down). A shift left doubles the value. Shifts belong to the assembly instruction set in topic 4, but this question is asked with the number work here.

Overflow in signed arithmetic happens when the true result falls outside this range — spotted when the sign bit flips wrongly (two positives giving a negative, or two negatives giving a positive).

One's complement

Before two's complement, an older scheme called one's complement 反码 represented a negative number by simply inverting every bit of the positive — there is no "add 1" step.

  • $+30 = 00011110$, so in one's complement $-30 = 11100001$ (just the inverse).
  • Drawback: it has two zeros — $00000000$ ($+0$) and $11111111$ ($-0$) — which wastes a bit pattern and makes arithmetic awkward.

Two's complement (invert and add 1) removes the negative zero: it has a single zero and lets addition and subtraction use the same circuit. That is why modern computers store signed integers in two's complement, not one's complement.

Português

Adição binária

Adicione coluna por coluna da direita, carregando como na decimal:

Bit A Bit B Carry in Sum bit Carry out
0 0 0 0 0
0 0 1 1 0
0 1 0 1 0
0 1 1 0 1
1 1 0 0 1
1 1 1 1 1

Overflow 溢出 ocorre quando o resultado precisa de mais bits do que o register 寄存器 pode armazenar — o carry-out da coluna mais à esquerda é o bit de overflow.

Exemplo resolvido. Some os inteiros sem sinal de 8 bits $10110101$ e $01101100$, e comente sobre o resultado.

$10110101 + 01101100 = 1\,00100001$. A resposta precisa de 9 bits, então não cabe em um registro de 8 bits: ocorreu overflow. Uma resposta completa nomeia o erro e diz por quê, usando a largura de palavra dada pela questão: "Overflow: o resultado verdadeiro ($289$) é maior que o maior valor que um registro de 8 bits pode armazenar ($255$), então o carry out do bit mais significativo é perdido e o resultado armazenado ($00100001 = 33$) está errado."

Subtração binária

O método usual é a adição de two's complement 补码: para fazer $A - B$, forme o two's complement de $B$ (inverte todos os bits e soma 1), depois some, e descarte qualquer carry-out final.

Para subtrair $00011110$ de $01100100$ (sem sinal 8 bits):

  • two's complement de $00011110$: inverta → $11100001$, some 1 → $11100010$.
  • some com $01100100$: resultado $1\,01000110$ (9 bits) — descarte o 1 inicial → $01000110 = 70_{10}$. Verifique: $100 - 30 = 70$. ✓

Inteiros sinalizados em two's complement

Em um número two's complement de $n$ bits:

  • o most significant bit 最高有效位 (MSB) é o sign bit 符号位: 0 = positivo, 1 = negativo.
  • para ler um número negativo: inverta todos os bits, some 1, depois negue.

Então $11100010$ é negativo; inverta → $00011101$, some 1 → $00011110 = 30$, logo é $-30$. Este é um signed integer 有符号整数 (ao contrário de um unsigned 无 signed one). O intervalo para $n$ bits é $-2^{n-1}$ a $+2^{n-1} - 1$; para 8 bits, $-128$ ($10000000$) a $+127$ ($01111111$).

Os mesmos bits significam números diferentes dependendo da leitura acordada. Como inteiro unsigned, cada bit é um valor posicional, então 8 bits variam de $0$ a $255$; como inteiro sinalizado two's complement, o bit superior é o sinal, então os mesmos 8 bits variam de $-128$ a $+127$. O padrão $11111111$ é $255$ lido de uma forma e $-1$ lido da outra — nada nos próprios bits diz qual é.

Uma tabela de quatro padrões de 8 bits lidos duas vezes: 00000000 é 0 de ambos os modos, 01111111 é 127 unsigned e +127 signed, 10000000 é 128 unsigned mas -128 signed, e 11111111 é 255 unsigned mas -1 signed O mesmo byte lido como unsigned e signed: apenas a interpretação acordada os distingue Uma linha numérica two's complement de 8 bits de -128 (10000000) a +127 (01111111); números com sign bit 1 são negativos e aqueles com sign bit 0 são positivos, com -1 = 11111111 logo abaixo de 0 = 00000000 Two's complement de 8 bits: o sign bit divide o intervalo em negativo ($-128$ a $-1$) e positivo ($0$ a $127$)

Exemplo resolvido. Qual o valor decimal representado pelo número two's complement de 8 bits $10110100$?

O MSB é 1, então é negativo. Inverta → $01001011$, adicione 1 → $01001100 = 76$, então o valor é $-76$. Verifique com valores posicionais: $-128 + 32 + 16 + 4 = -76$.

Exemplo resolvido. Escreva $-108$ como um inteiro two's complement de 12 bits.

Comece com $+108$ em 12 bits: $108 = 64 + 32 + 8 + 4$, então 0000 0110 1100. Inverta todos os bits: 1111 1001 0011. Some 1: 1111 1001 0100. Verifique com valores posicionais, onde o bit superior vale $-2^{11} = -2048$: $-2048 + 1024 + 512 + 256 + 128 + 16 + 4 = -108$. ✓

Para 12 bits, o intervalo é $-2048$ (1000 0000 0000) a $+2047$ (0111 1111 1111). Questões que pedem os menores e maiores valores querem esses dois padrões, então aprenda a regra: o número mais negativo é um 1 seguido de zeros; o mais positivo é um 0 seguido de uns.

Um arithmetic shift 算术移位 move todos os bits para a esquerda ou direita, mas mantém o sinal: um shift right em um lugar divide o valor ao meio e copia o sign bit no espaço vazio à esquerda, então um número negativo permanece negativo (1111 1001 0100 deslocado right três lugares é 1111 1111 0010, que é $-14$: $-108 / 8 = -13.5$, e um shift right arredonda para baixo). Um shift left dobra o valor. Shifts pertencem ao conjunto de instruções assembly no tópico 4, mas esta pergunta é feita com o trabalho numérico aqui.

Overflow em aritmética sinalizada ocorre quando o resultado verdadeiro cai fora deste intervalo — identificado quando o sign bit inverte incorretamente (dois positivos dando negativo, ou dois negativos dando positivo).

One's complement

Antes do two's complement, um esquema antigo chamado one's complement 反码 representava um número negativo simplesmente invertendo todos os bits do positivo — não há etapa de "somar 1".

  • $+30 = 00011110$, então em one's complement $-30 = 11100001$ (apenas o inverso).
  • Desvantagem: possui dois zeros — $00000000$ ($+0$) e $11111111$ ($-0$) — o que desperdiça um padrão de bits e torna a aritmática complicada.

Two's complement (inverta e some 1) elimina o zero negativo: ele tem um único zero e permite que adição e subtração usem o mesmo circuito. É por isso que computadores modernos armazenam inteiros sinalizados em two's complement, não em one's complement.

Explore · ⁨Explorar⁩

Binário & inteiros sinalizados

byte = Σ valores de posição

Veja como um padrão de 8 bits mapeia para um número (e como transbordaria além de 255).

Explore · ⁨Explorar⁩

Bits sinalizados em complemento de dois

O bit mais à esquerda carrega um valor de posição negativo. Alterne qualquer bit — ou clique em Negate (inverta todos os bits, depois adicione 1) — e veja o valor sinalizado mudar.

Vocabulary · ⁨Vocabulário⁩ Train · ⁨Treinar⁩
English · ⁨Inglês⁩ Chinese · ⁨Chinês⁩ Pinyin
register/ˈredʒɪstə/ 寄存器 jì cún qì
unsigned/ʌnˈsaɪnd/ 无符号 wú fú hào
overflow/ˌəʊvəˈfləʊ/ 溢出 yì chū
most significant bit/məʊst sɪɡˈnɪfɪkənt bɪt/ 最高有效位 zuì gāo yǒu xiào wèi
two's complement/tuːz ˈkɒmplɪmənt/ 补码 bǔ mǎ
signed integer/saɪnd ˈɪntɪdʒə/ 有符号整数 yǒu fú hào zhěng shù
sign bit/saɪn bɪt/ 符号位 fú hào wèi
arithmetic shift/ˌærɪθˈmetɪk ʃɪft/ 算术移位 suàn shù yí wèi
one's complement/wʌnz ˈkɒmplɪmənt/ 反码 fǎn mǎ
1.1

Binary Coded Decimal (BCD) · ⁨Decimal Coded Binary (BCD)⁩

English

In BCD 二进码十进数, each denary digit is written as its own 4-bit pattern. The number $93$ is 1001 0011 in BCD — not binary 93 ($01011101$). Each nibble uses only 0–9; patterns $1010$–$1111$ are invalid.

BCD reading: 0010 0111 0101 → 2, 7, 5 → 275.

Use: calculators, digital clocks, and devices that show denary digits — each digit drives a 7-segment display 七段显示器. Currency code often uses BCD to avoid the rounding errors of converting fractions like 0.1 to binary.

A "justify" answer must link the use to a property of BCD: each denary digit has its own 4 bits, so a digit can be sent straight to its display, or added digit by digit, with no conversion of the whole number; and a decimal fraction such as $0.10$ is stored exactly, which a binary fraction cannot do.

Português

Em BCD 二进码十进数, cada dígito decimal é escrito como seu próprio padrão de 4 bits. O número $93$ é 1001 0011 em BCD — não binário 93 ($01011101$). Cada nibble usa apenas 0–9; padrões $1010$–$1111$ são inválidos.

Leitura BCD: 0010 0111 0101 → 2, 7, 5 → 275.

Uso: calculadoras, relógios digitais e dispositivos que exibem dígitos decimais — cada dígito aciona um 7-segment display 七段显示器. O código de moeda frequentemente usa BCD para evitar erros de arredondamento ao converter frações como 0.1 em binário.

Uma resposta "justify" deve ligar o uso a uma propriedade do BCD: cada dígito decimal tem seus próprios 4 bits, então um dígito pode ser enviado diretamente para seu display, ou somado dígito por dígito, sem conversão do número todo; e uma fração decimal como $0.10$ é armazenada exatamente, algo que uma fração binária não consegue fazer.

Componente de display LED de sete segmentos de um único dígito, mostrando suas sete barras separadas
Um display de sete segmentos mostra um dígito decimal, frequentemente acionado por BCD
Vocabulary · ⁨Vocabulário⁩ Train · ⁨Treinar⁩
English · ⁨Inglês⁩ Chinese · ⁨Chinês⁩ Pinyin
BCD/ˌbiː siː ˈdiː/ 二进码十进数 èr jìn mǎ shí jìn shù
7-segment display/ˈsevən ˈseɡmənt dɪˈspleɪ/ 七段显示器 qī duàn xiǎn shì qì
1.1

Hexadecimal — practical uses · ⁨Hexadecimal — usos práticos⁩

English

Hex is a compact way to write binary (1 hex digit = 4 bits):

  • memory addresses 内存地址 in low-level programming — 0x7FFE.
  • colour values in HTML/CSS — #FF8800.
  • MAC addresses — AC:DE:48:00:11:22.

Hex does not change the stored data — it just makes binary easier for humans.

Português

Hex é uma forma compacta de escrever binário (1 dígito hex = 4 bits):

Um byte se divide em dois nibbles; cada nibble é um dígito hexadecimal
Um byte são dois nibbles; cada nibble é um dígito hex
  • memory addresses 内存地址 em programação de baixo nível — 0x7FFE.
  • colour values em HTML/CSS — #FF8800.
  • MAC addresses — AC:DE:48:00:11:22.

Hex não altera os dados armazenados — apenas facilita o binário para humanos.

Vocabulary · ⁨Vocabulário⁩ Train · ⁨Treinar⁩
English · ⁨Inglês⁩ Chinese · ⁨Chinês⁩ Pinyin
memory address/ˈmeməri əˈdres/ 内存地址 nèi cún dì zhǐ
1.1

Character codes · ⁨Códigos de caracteres⁩

English

Computers store text as numbers; each character has a numeric code point 码点 set by a character set 字符集.

ASCII

  • ASCII uses 7 bits — 128 code points. Basic Latin letters, digits, punctuation, and control codes.
  • Extended ASCII uses 8 bits — 256 code points; the lower 128 match ASCII, the upper 128 vary by region.

Unicode

  • Unicode is a universal character set covering almost every script, plus symbols and emoji.
  • common encodings 编码: UTF-8 (1–4 bytes, ASCII-compatible), UTF-16 (2 or 4 bytes), UTF-32 (fixed 4 bytes).

Why Unicode beats ASCII

  • it represents far more characters (every script, emoji); ASCII covers only basic English.
  • files are portable with no code-page confusion, and allow multilingual text in one document.
  • trade-off: Unicode files are usually larger for English-only text.

When a question asks for differences, give them in pairs with numbers: ASCII uses 7 bits (extended ASCII 8), so 128 (256) characters; Unicode uses up to 32 bits (UTF-8 uses 1 to 4 bytes), so more than a million code points. ASCII covers basic English only; Unicode covers every script, and its first 128 code points are the ASCII ones. In UTF-8 an English letter still takes 1 byte, so a 40-letter English file name is 40 bytes in ASCII and in UTF-8 alike, while a Chinese character takes 3 bytes.

Português

Computadores armazenam texto como números; cada caractere tem um code point 码点 numérico definido por um character set 字符集.

ASCII

  • ASCII usa 7 bits — 128 code points. Letras latinas básicas, dígitos, pontuação e códigos de controle.
  • Extended ASCII usa 8 bits — 256 code points; os primeiros 128 correspondem ao ASCII, os últimos 128 variam por região.
Tabela pequena de ASCII: o caractere A é código 65 = 01000001, a é 97 = 01100001, o dígito 0 é 48 = 00110000, e espaço é 32 = 00100000
Cada caractere é armazenado como um número — alguns code points ASCII em decimal e binário

Unicode

  • Unicode é um conjunto universal de caracteres cobrindo quase todos os scripts, além de símbolos e emojis.
  • encodings 编码 comuns: UTF-8 (1–4 bytes, compatível com ASCII), UTF-16 (2 ou 4 bytes), UTF-32 (fixo 4 bytes).

Por que Unicode supera ASCII

  • representa muitos mais caracteres (todos os scripts, emojis); ASCII cobre apenas inglês básico.
  • arquivos são portáteis sem confusão de páginas de código, e permitem texto multilíngue em um único documento.
  • trade-off: arquivos Unicode costumam ser maiores para texto apenas em inglês.

Quando uma questão pede diferenças, dê-as em pares com números: ASCII usa 7 bits (ASCII estendido 8), logo 128 (256) caracteres; Unicode usa até 32 bits (UTF-8 usa 1 a 4 bytes), logo mais de um milhão de code points. ASCII cobre apenas inglês básico; Unicode cobre todos os scripts, e seus primeiros 128 code points são os do ASCII. Em UTF-8, uma letra inglesa ainda ocupa 1 byte, então um nome de arquivo de 40 letras em inglês tem 40 bytes tanto no ASCII quanto no UTF-8, enquanto um caractere chinês ocupa 3 bytes.

Explore · ⁨Explorar⁩

Um caractere é armazenado como um número

Cada caractere tem um código numérico — 'A' é 65. Inverta os bits para ver esse código em binário e hexadecimal, exatamente como o computador o armazena.

Vocabulary · ⁨Vocabulário⁩ Train · ⁨Treinar⁩
English · ⁨Inglês⁩ Chinese · ⁨Chinês⁩ Pinyin
code point/kəʊd pɔɪnt/ 码点 mǎ diǎn
character set/ˈkærɪktə set/ 字符集 zì fú jí
encoding/enˈkəʊdɪŋ/ 编码 biān mǎ
1.2

Bitmap images · ⁨Imagens bitmap⁩

Syllabus · ⁨Programa⁩
English
Candidates should be able to: Notes and guidance
Show understanding of how data for a bitmapped image are encoded Use and understand the terms: pixel, file header, image resolution, screen resolution, colour depth / bit depth
Perform calculations to estimate the file size for a bitmap image
Show understanding of the effects of changing elements of a bitmap image on the image quality and file size Use the terms: image resolution, colour depth / bit depth
Show understanding of how data for a vector graphic are encoded Use the terms: drawing object, property, drawing list
Justify the use of a bitmap image or a vector graphic for a given task
Show understanding of how sound is represented and encoded Use the terms: sampling, sampling rate, sampling resolution, analogue and digital data
Show understanding of the impact of changing the sampling rate and resolution Including the impact on file size and accuracy
Português
Os candidatos devem ser capazes de: Notas e orientações
Demonstrar compreensão de como os dados de uma imagem bitmap são codificados Usar e compreender os termos: pixel, cabeçalho do arquivo, resolução da imagem, resolução da tela, profundidade de cor / profundidade de bits
Realizar cálculos para estimar o tamanho do arquivo para uma imagem bitmap
Demonstrar compreensão dos efeitos de alterar elementos de uma imagem bitmap na qualidade da imagem e no tamanho do arquivo Usar os termos: resolução da imagem, profundidade de cor / profundidade de bits
Demonstrar compreensão de como os dados de um gráfico vetorial são codificados Usar os termos: objeto de desenho, propriedade, lista de desenho
Justificar o uso de uma imagem bitmap ou um gráfico vetorial para uma tarefa dada
Demonstrar compreensão de como o som é representado e codificado Usar os termos: amostragem, taxa de amostragem, resolução de amostragem, dados analógicos e dados digitais
Demonstrar compreensão do impacto de alterar a taxa de amostragem e a resolução Incluindo o impacto no tamanho do arquivo e na precisão

Source: Cambridge International syllabus · ⁨Fonte: Programa Cambridge International⁩

English

A bitmap 位图 image (also called a bitmapped image) stores the colour of every pixel 像素 in a grid. At the start of the file a file header 文件头 records the image's metadata — its width, height and colour depth — so software knows how to read the pixel data that follows.

  • image resolution 图像分辨率: the bitmap's own size, width × height in pixels (e.g. 1920 × 1080).
  • screen resolution 屏幕分辨率: the width × height the display can show. If an image's resolution is larger than the screen it is scaled down to fit; a low-resolution image looks blocky when stretched onto a higher-resolution screen.
  • colour depth 颜色深度 (bit depth 位深度): bits per pixel. 1 bit → black/white; 8 bits → 256 colours; 24 bits → 16.7 million ("true colour").

File size

$$\text{size in bits} = \text{width} \times \text{height} \times \text{bit depth}.$$

Divide by 8 for bytes, by 1024 for KiB, etc. Example: a $3000 \times 2000$ image at 24 bpp is $3000 \times 2000 \times 24 = 1.44 \times 10^{8}$ bits $\approx 17.2\ \text{MiB}$.

State the units you used. The mark scheme accepts $1\ \text{MB} = 10^{6}$ bytes (the SI prefix) or $1\ \text{MiB} = 1024 \times 1024$ bytes (the binary prefix), as long as your working shows which one; the same image is $18.0\ \text{MB}$ or $17.2\ \text{MiB}$. Add the size of the file header if the question gives one.

A video is a sequence of bitmap images, each one a frame 帧. Before compression its size is the size of one frame $\times$ the frame rate 帧率 (frames per second) $\times$ the duration in seconds: 30 frames per second of $1920 \times 1080$ pixels at 24 bits is $30 \times 1920 \times 1080 \times 24 \approx 1.5 \times 10^{9}$ bits, about $187\ \text{MB}$, for every second. That is why video is always compressed.

Changing settings

  • lower resolution → smaller file, less detail (looks blocky when enlarged).
  • lower colour depth → smaller file, but smooth shades show banding.
  • higher of either → larger file, better quality.
Português

Uma imagem bitmap 位图 (também chamada de bitmapped image) armazena a cor de cada pixel 像素 em uma grade. No início do arquivo, um file header 文件头 registra os metadados da imagem — sua largura, altura e profundidade de cor — para que o software saiba como ler os dados de pixel que seguem.

  • image resolution 图像 resolução: o tamanho próprio do bitmap, largura × altura em pixels (ex. 1920 × 1080).
  • screen resolution 屏幕分辨率: a largura × altura que o display pode mostrar. Se a resolução de uma imagem for maior que a tela, ela é escalonada para caber; uma imagem de baixa resolução fica pixelizada quando esticada em uma tela de alta resolução.
  • profundidade de cor profundidade de cor (profundidade de bits profundidade de bits): bits por pixel. 1 bit → preto e branco; 8 bits → 256 cores; 24 bits → 16.7 milhão ("cor verdadeira").
O mesmo disco armazenado em três grades de pixels, A a C, ficando mais pixelizado conforme os pixels crescem e diminuem
A mesma imagem armazenada em três resoluções, de alta (A) a baixa (C): menos pixels maiores significam menos detalhes

Tamanho do arquivo

$$\text{size in bits} = \text{width} \times \text{height} \times \text{bit depth}.$$

Divida por 8 para bytes, por 1024 para KiB, etc. Exemplo: uma imagem $3000 \times 2000$ a 24 bpp é $3000 \times 2000 \times 24 = 1.44 \times 10^{8}$ bits $\approx 17.2\ \text{MiB}$.

Uma grade de pixels 6 por 4 com sua largura e altura rotuladas; pixels = 6 vezes 4 = 24, e a 8 bits por pixel o tamanho = 24 vezes 8 = 192 bits
A mesma fórmula em números pequenos: conte os pixels, depois multiplique pela profundidade de cor

Informe as unidades que usou. O gabarito aceita $1\ \text{MB} = 10^{6}$ bytes (prefixo SI) ou $1\ \text{MiB} = 1024 \times 1024$ bytes (prefixo binário), desde que seu cálculo mostre qual; a mesma imagem é $18.0\ \text{MB}$ ou $17.2\ \text{MiB}$. Adicione o tamanho do cabeçalho do arquivo se a questão o fornecer.

Um vídeo é uma sequência de imagens bitmap, cada uma sendo um quadro 帧. Antes da compressão, seu tamanho é o tamanho de um quadro $\times$ a taxa de quadros 帧率 (quadros por segundo) $\times$ a duração em segundos: 30 quadros por segundo de $1920 \times 1080$ pixels a 24 bits são $30 \times 1920 \times 1080 \times 24 \approx 1.5 \times 10^{9}$ bits, aproximadamente $187\ \text{MB}$, para cada segundo. É por isso que vídeos sempre são comprimidos.

Alterando configurações

  • resolução mais baixa → arquivo menor, menos detalhes (aparece pixelizado quando ampliado).
  • profundidade de cor mais baixa → arquivo menor, mas tons suaves mostram faixas.
  • maior de qualquer um → arquivo maior, melhor qualidade.
Vocabulary · ⁨Vocabulário⁩ Train · ⁨Treinar⁩
English · ⁨Inglês⁩ Chinese · ⁨Chinês⁩ Pinyin
bitmap/ˈbɪtmæp/ 位图 wèi tú
pixel/ˈpɪksl/ 像素 xiàng sù
file header/faɪl ˈhedə/ 文件头 wén jiàn tóu
colour depth/ˈkʌlə depθ/ 颜色深度 yán sè shēn dù
image resolution/ˈɪmɪdʒ ˌrezəˈluːʃn/ 图像分辨率 tú xiàng fēn biàn lǜ
screen resolution/skriːn ˌrezəˈluːʃn/ 屏幕分辨率 píng mù fēn biàn lǜ
bit depth/bɪt depθ/ 位深度 wèi shēn dù
frame/freɪm/ 帧 zhēn
1.2

Vector graphics · ⁨Gráficos vetoriais⁩

English

A vector graphic 矢量图形 stores the instructions to draw the image as a drawing list 绘图列表 — an ordered list of drawing objects 绘图对象 (geometric primitives 图元: lines, curves, polygons, circles). Each drawing object has properties 属性 such as colour, fill, line width and position (coordinates). To show it, the program renders 渲染 the drawing list at any resolution needed.

Bitmap vs vector

Task Better choice Why
Photograph Bitmap Complex pixel-level detail can't be described as shapes.
Logo, icon, sign Vector Sharp edges; scales to any size without blur.
Engineering drawing Vector Precise geometry and scaling.
Painting, texture Bitmap Smooth tonal detail per area.

Vector advantage: it scales without losing quality — a vector logo stays sharp at any size, while a bitmap blurs when enlarged. Vector disadvantage: it cannot describe arbitrary pixel detail (photographs).

A "justify" answer links the choice to the task. "The logo must appear on a business card and on a billboard, so it should be a vector graphic: it is stored as drawing objects and is re-rendered sharply at any size, whereas a bitmap would show its pixels when enlarged." For a photograph the argument runs the other way: there are no shapes to describe, so every pixel's colour must be stored.

Português

Um gráfico vetorial 矢量图形 armazena as instruções para desenhar a imagem como uma lista de desenho 绘图列表 — uma lista ordenada de objetos de desenho 绘图对象 (primitivas geométricas 图元: linhas, curvas, polígonos, círculos). Cada objeto de desenho possui propriedades 属性 como cor, preenchimento, largura da linha e posição (coordenadas). Para exibi-lo, o programa renderiza 渲染 a lista de desenhos na resolução necessária.

Um desenho simples de casa feito a partir de um corpo retangular, telhado triangular, janela circular, porta retangular e uma linha, cada um rotulado com seu tipo de forma e atributos
Uma imagem vetorial é construída a partir de formas geométricas rotuladas, cada uma com atributos

Bitmap vs Vetor

Tarefa Melhor escolha Por quê
Fotografia Bitmap Detalhes complexos ao nível do pixel não podem ser descritos como formas.
Logotipo, ícone, sinal Vetor Bordas nítidas; escala para qualquer tamanho sem desfoque.
Desenho técnico Vetor Geometria precisa e escalabilidade.
Pintura, textura Bitmap Detalhe tonal suave por área.

Vantagem vetorial: ele escala sem perder qualidade — um logotipo vetorial permanece nítido em qualquer tamanho, enquanto um bitmap fica desfocado quando ampliado. Desvantagem vetorial: não pode descrever detalhes arbitrários de pixels (fotografias).

Uma resposta "justificativa" vincula a escolha à tarefa. "O logotipo deve aparecer num cartão de visita e num outdoor, então deve ser um gráfico vetorial: é armazenado como objetos de desenho e é renderizado nitidamente em qualquer tamanho, enquanto um bitmap mostraria seus pixels quando ampliado." Para uma fotografia, o argumento funciona ao contrário: não há formas para descrever, então a cor de cada pixel deve ser armazenada.

Lado a lado, ambos ampliados: uma diagonal bitmap é uma escada irregular de pixels, enquanto uma diagonal vetorial permanece uma linha reta suave
Ampliado, os pixels de um bitmap tornam-se irregulares; um vetorial permanece suave em qualquer tamanho
Explore · ⁨Explorar⁩

Laboratório de conceitos de computação

Classifique exemplos concretos pelo conceito de computação que eles demonstram.

Vocabulary · ⁨Vocabulário⁩ Train · ⁨Treinar⁩
English · ⁨Inglês⁩ Chinese · ⁨Chinês⁩ Pinyin
vector graphic/ˈvektə ˈɡræfɪk/ 矢量图形 shǐ liàng tú xíng
drawing list/ˈdrɔːɪŋ lɪst/ 绘图列表 huì tú liè biǎo
drawing objects/ˈdrɔːɪŋ ˈɒbdʒekts/ 绘图对象 huì tú duì xiàng
primitive/ˈprɪmɪtɪv/ 图元 tú yuán
properties/ˈprɒpətiz/ 属性 shǔ xìng
render/ˈrendə/ 渲染 xuàn rǎn
analogue data/ˈænəlɒɡ ˈdeɪtə/ 模拟数据 mó nǐ shù jù
digital data/ˈdɪdʒɪtl ˈdeɪtə/ 数字数据 shù zì shù jù
1.2

Sound · ⁨Som⁩

English

A continuous wave of analogue data 模拟数据 (the sound) is converted into digital data 数字数据 by sampling 采样:

  • sampling rate 采样率 — samples per second (Hz). CD quality is $44.1\ \text{kHz}$.
  • sampling resolution 采样分辨率 (bit depth) — bits per sample's amplitude 振幅. CD quality is 16 bits.

File size

$$\text{size in bits} = \text{sampling rate} \times \text{resolution} \times \text{duration} \times \text{channels}.$$

A 10-second stereo CD clip: $44100 \times 16 \times 10 \times 2 = 14\,112\,000$ bits $\approx 1.68\ \text{MiB}$.

Changing settings

  • higher sampling rate → captures higher pitches, larger file.
  • higher sample resolution → finer amplitude steps, less quantisation 量化 noise, larger file.
  • lower of either → smaller file, clear quality loss.

(The sampling rate must be at least twice the highest frequency you want to keep.)

Português

Uma onda contínua de dados analógicos 模拟数据 (o som) é convertida em dados digitais 数字数据 por amostragem 采样:

  • taxa de amostragem 采样率 — amostras por segundo (Hz). Qualidade CD é $44.1\ \text{kHz}$.
  • resolução de amostragem 采样分辨率 (profundidade de bits) — bits por amostra de amplitude 振幅. Qualidade CD é 16 bits.
Uma onda sonora analógica suave com barras verticais de amostra em intervalos regulares de tempo, cada barra lendo a amplitude da onda
Amostragem de uma onda sonora: sua amplitude é lida em cada intervalo de tempo

Tamanho do arquivo

$$\text{size in bits} = \text{sampling rate} × \text{resolution} × \text{duration} × \text{channels}.$$

Um clipe estéreo CD de 10 segundos: $44100 \times 16 \times 10 \times 2 = 14\,112\,000$ bits $\approx 1.68\ \text{MiB}$.

Alterando configurações

  • taxa de amostragem mais alta → capta agudos mais altos, arquivo maior.
  • resolução de amostragem mais alta → passos de amplitude mais finos, menos ruído de quantização 量化, arquivo maior.
  • menor de qualquer um → arquivo menor, perda clara de qualidade.

(A taxa de amostragem deve ser pelo menos duas vezes a frequência mais alta que você deseja manter.)

Uma onda sonora cruzada por linhas de amostra espaçadas uniformemente, um ponto por amostra, anotado como taxa de amostragem = amostras por segundo e Nyquist pelo menos duas vezes a frequência mais alta
Taxa de amostragem é amostras por segundo; a regra de Nyquist é por que deve ser pelo menos duas vezes a frequência mais alta mantida
Explore · ⁨Explorar⁩

Amostragem de som

y = a sin(bt + c)

A amostragem mede uma onda sonora em intervalos regulares — quanto maior a taxa, mais fielmente ela é copiada.

Vocabulary · ⁨Vocabulário⁩ Train · ⁨Treinar⁩
English · ⁨Inglês⁩ Chinese · ⁨Chinês⁩ Pinyin
digit/ˈdɪdʒɪt/ 数位 shù wèi
sampling/ˈsæmplɪŋ/ 采样 cǎi yàng
sampling rate/ˈsæmplɪŋ reɪt/ 采样率 cǎi yàng lǜ
sampling resolution/ˈsæmplɪŋ ˌrezəˈluːʃn/ 采样分辨率 cǎi yàng fēn biàn lǜ
amplitude/ˈæmplɪtjuːd/ 振幅 zhèn fú
sample resolution/ˈsæmpl ˌrezəˈluːʃn/ 采样分辨率 cǎi yàng fēn biàn lǜ
quantisation/ˌkwɒntaɪˈzeɪʃn/ 量化 liàng huà
bandwidth/ˈbændwɪdθ/ 带宽 dài kuān
lossless/ˈlɒsləs/ 无损 wú sǔn
lossy/ˈlɒsi/ 有损 yǒu sǔn
run-length encoding/rʌn leŋθ enˈkəʊdɪŋ/ 行程编码 xíng chéng biān mǎ
dictionary methods/ˈdɪkʃənəri ˈmeθədz/ 字典编码 zì diǎn biān mǎ
1.3

Compression · ⁨Compressão⁩

Syllabus · ⁨Programa⁩
English
Candidates should be able to: Notes and guidance
Show understanding of the need for and examples of the use of compression
Show understanding of lossy and lossless compression and justify the use of a method in a given situation
Show understanding of how a text file, bitmap image, vector graphic and sound file can be compressed Including the use of run-length encoding (RLE)
Português
Os candidatos devem ser capazes de: Notas e orientações
Demonstrar compreensão da necessidade e exemplos de uso de compactação
Demonstrar compreensão de compactação com perda e sem perda e justificar o uso de um método numa situação dada
Demonstrar compreensão de como um arquivo de texto, imagem bitmap, gráfico vetorial e arquivo de som podem ser compactados Incluindo o uso de codificação run-length (RLE)

Source: Cambridge International syllabus · ⁨Fonte: Programa Cambridge International⁩

English

Compression 压缩 reduces file size, saving storage and transmission bandwidth 带宽. Two kinds:

  • lossless 无损 — the original data is recovered exactly (text, programs, ZIP/PNG).
  • lossy 有损 — some detail is dropped for much smaller files (JPEG, MP3, video).

When to use which

  • lossless for documents, source code, medical images — anything needing exact data.
  • lossy for streaming media. Real-time video streaming uses lossy compression because it must send huge amounts of data in real time over limited bandwidth; lossless would not shrink it enough. Raw HD video is gigabytes per minute, so without compression the picture would keep freezing.

A "justify" answer names the method, then the reason from the situation: "Lossless, because the spreadsheet must be restored exactly; a single changed value would make the accounts wrong." Or: "Lossy, because the photographs are viewed on a phone screen where the dropped detail is not visible, and the smaller files upload faster and use less storage."

Lossless methods

  • run-length encoding 行程编码 (RLE): store "the next $n$ values are $x$" instead of repeating $x$. Great for flat areas; useless for noisy data.
  • dictionary methods 字典编码 (ZIP, PNG): replace repeated byte sequences with a short reference. Good for text and code.
  • Huffman coding 霍夫曼编码: give short codes to common symbols and long codes to rare ones, bringing the average code length near the data's entropy 熵.

How each kind of file is compressed:

  • text file: dictionary methods and Huffman coding turn repeated words and common characters into short codes. Text must stay lossless, because one changed character changes the meaning.
  • bitmap image: RLE for runs of identical pixels (icons, diagrams, black-and-white scans); lossy JPEG for photographs, or a lower colour depth or resolution.
  • vector graphic: the drawing list is already small; remove drawing objects that are not needed, store coordinates to fewer decimal places, or apply a lossless method such as ZIP to the file.
  • sound file: lossy MP3 or AAC removes what the ear cannot hear; a lower sampling rate or resolution is also lossy; lossless formats keep every sample and shrink the file much less.

Lossy methods

  • images (JPEG): drop fine detail and colour differences the eye barely sees.
  • sound (MP3, AAC): drop pitches we hear less well, and quiet sounds hidden by louder ones.
  • video combines spatial 空间 compression (within each frame, like JPEG) with temporal 时间 compression (most frames store only the differences from the previous frame).
Português

Compressão 压缩 reduz o tamanho do arquivo, economizando armazenamento e largura de banda 带宽 de transmissão. Dois tipos:

  • sem perdas 无损 — os dados originais são recuperados exatamente (texto, programas, ZIP/PNG).
  • com perdas 有损 — alguns detalhes são descartados para arquivos muito menores (JPEG, MP3, vídeo).

Quando usar qual

  • sem perdas para documentos, código-fonte, imagens médicas — qualquer coisa que precise de dados exatos.
  • com perdas para streaming de mídia. Streaming de vídeo em tempo real usa compressão com perdas porque deve enviar grandes quantidades de dados em tempo real sobre largura de banda limitada; sem perdas não reduziria o suficiente. Vídeo HD bruto é gigabytes por minuto, então sem compressão a imagem ficaria travando constantemente.

Uma resposta "justificativa" nomeia o método, depois a razão baseada na situação: "Sem perdas, porque a planilha deve ser restaurada exatamente; um único valor alterado tornaria as contas erradas." Ou: "Com perdas, porque as fotografias são visualizadas numa tela de celular onde os detalhes perdidos não são visíveis, e os arquivos menores sobem mais rápido e usam menos armazenamento."

Métodos sem perdas

  • codificação por comprimento de corrida 行程编码 (RLE): armazene "os próximos $n$ valores são $x$" em vez de repetir $x$. Ótimo para áreas planas; inútil para dados ruidosos.
  • métodos de dicionário 字典编码 (ZIP, PNG): substitui sequências de bytes repetidas por uma referência curta. Bom para texto e código.
  • codificação Huffman 霍夫曼编码: dá códigos curtos para símbolos comuns e longos para raros, aproximando o comprimento médio do código da entropia 熵 dos dados.

Como cada tipo de arquivo é comprimido:

  • arquivo de texto: métodos de dicionário e codificação Huffman transformam palavras repetidas e caracteres comuns em códigos curtos. Texto deve permanecer sem perdas, pois um caractere alterado muda o significado.
  • imagem bitmap: RLE para corridas de pixels idênticos (ícones, diagramas, digitalizações preto-e-branco); JPEG com perdas para fotografias, ou profundidade/resolução de cor mais baixa.
  • gráfico vetorial: a lista de desenho já é pequena; remova objetos de desenho desnecessários, armazene coordenadas com menos casas decimais, ou aplique um método sem perdas como ZIP ao arquivo.
  • arquivo de som: MP3 ou AAC com perdas remove o que o ouvido não consegue ouvir; taxa ou resolução de amostragem mais baixa também é com perdas; formatos sem perdas mantêm cada amostra e reduzem o arquivo muito menos.
Uma fileira de 16 pixels com 6 células brancas, 4 pretas e 6 brancas; as três corridas são delimitadas e rotuladas 6W, 4B, 6W, assim 16 pixels são armazenados como as 3 corridas 6W 4B 6W
Codificação por comprimento de corrida em uma única fileira: 16 pixels tornam-se 3 corridas
Uma grade preto-e-branco 8 por 8 mostrando a letra F, com o padrão binário de cada fileira e seu código de comprimento de corrida mais curto listados ao lado
Codificação por comprimento de corrida da letra F em uma grade preto-e-branco $8\times8$
Codificação de dicionário demonstrada: a fonte ABC ABC ABC XYZ, um dicionário no qual 1 representa ABC e 2 representa XYZ, e o stream codificado 1 1 1 2
Codificação de dicionário: cada sequência repetida é armazenada uma vez, e cada ocorrência torna-se um índice curto
Codificação Huffman demonstrada na palavra BANANA: contagens das letras A 3, N 2 e B 1, a árvore de códigos construída a partir delas, e os códigos resultantes A = 0, B = 10, N = 11
Codificação Huffman: o símbolo mais comum recebe o código mais curto, então BANANA precisa de 10 bits em vez de 12

Métodos com perdas

  • imagens (JPEG): descarta detalhes finos e diferenças de cor que o olho mal percebe.
  • som (MP3, AAC): descarta agudos que ouvimos menos bem, e sons quietos escondidos por sons mais altos.
  • vídeo combina compressão espacial 空间 (dentro de cada quadro, como JPEG) com compressão temporal 时间 (a maioria dos quadros armazena apenas as diferenças em relação ao quadro anterior).
Uma árvore classificando compressão em sem perdas (RLE, dicionário/ZIP/PNG, Huffman) e com perdas (imagens JPEG, som MP3/AAC, vídeo) com exemplos sob cada ramo
Métodos de compressão: sem perdas versus com perdas, com exemplos comuns
Explore · ⁨Explorar⁩

Codificação por comprimento de corrida

Veja uma sequência de símbolos repetidos sendo comprimida em uma contagem — compressão sem perda simples.

Vocabulary · ⁨Vocabulário⁩ Train · ⁨Treinar⁩
English · ⁨Inglês⁩ Chinese · ⁨Chinês⁩ Pinyin
compression/kəmˈpreʃn/ 压缩 yā suō
frame rate/freɪm reɪt/ 帧率 zhēn lǜ
Huffman coding/ˈhʌfmən ˈkəʊdɪŋ/ 霍夫曼编码 huò fū màn biān mǎ
entropy/ˈentrəpi/ 熵 shāng
spatial/ˈspeɪʃl/ 空间 kōng jiān
temporal/ˈtempərəl/ 时间 shí jiān
Watch lesson · ⁨Assistir aula⁩
1.3

Definitions the examiner accepts · ⁨Definições aceitas pelo examinador⁩

English

A definition question is marked against fixed wording. Learn these exactly, and give one answer only.

Term Definition
bit a single binary digit, 0 or 1
byte a group of 8 bits
binary prefix a multiplier that is a power of 2 (kibi = 1024) rather than a power of 10 (kilo = 1000)
two's complement a way of representing signed integers in which the most significant bit has a negative place value
overflow the result of a calculation is too large to be represented in the number of bits available
Binary Coded Decimal each denary digit is stored as its own 4-bit binary pattern
character set the set of characters a computer can represent, each with its own binary code
pixel the smallest element of a bitmap image, storing one colour value
image resolution the number of pixels in an image, given as width by height
screen resolution the number of pixels a display can show, given as width by height
colour depth the number of bits used to store the colour of one pixel
sampling rate the number of samples of the sound taken per second
sampling resolution the number of bits used to store the amplitude of one sample
lossless compression compression from which the original data can be recovered exactly
lossy compression compression that permanently removes some data, so the original cannot be recovered
run-length encoding replacing a run of repeated values with one value and a count
Português

Uma questão de definição é avaliada contra wording fixo. Aprenda estas exatamente, e dê apenas uma resposta.

Termo Definição
bit um único dígito binário, 0 ou 1
byte um grupo de 8 bits
prefixo binário um multiplicador que é uma potência de 2 (kibi = 1024) em vez de uma potência de 10 (kilo = 1000)
complemento de dois uma maneira de representar inteiros sinalizados em que o bit mais significativo tem valor posicional negativo
estouro o resultado de um cálculo é grande demais para ser representado no número de bits disponíveis
Decimal Codificado Binariamente cada dígito decimal é armazenado como seu próprio padrão binário de 4 bits
conjunto de caracteres o conjunto de caracteres que um computador pode representar, cada um com seu próprio código binário
pixel o menor elemento de uma imagem bitmap, armazenando um valor de cor
resolução de imagem o número de pixels em uma imagem, dado como largura por altura
resolução de tela o número de pixels que um display pode mostrar, dado como largura por altura
profundidade de cor o número de bits usados para armazenar a cor de um pixel
taxa de amostragem o número de amostras do som tiradas por segundo
resolução de amostragem o número de bits usados para armazenar a amplitude de uma amostra
compressão sem perdas compressão da qual os dados originais podem ser recuperados exatamente
compressão com perdas compressão que remove permanentemente alguns dados, de modo que os originais não podem ser recuperados
codificação por comprimento de corrida substituir uma corrida de valores repetidos por um valor e uma contagem
1.3

Exam tips · ⁨Dicas de prova⁩

English
  • Show working for base conversions: denary → binary by place values, binary → hexadecimal in nibbles (groups of 4 bits).
  • For two's complement the MSB is negative; to negate, invert and add 1; watch for overflow when the sign bit flips wrongly.
  • Distinguish bitmap (pixels; file size $=$ width $\times$ height $\times$ colour depth) from vector (drawing commands; scales without loss).
  • Sound file size depends on sample rate $\times$ bit depth $\times$ time — more of each means better quality but a bigger file.
  • Compare lossless vs lossy compression and give a use for each.

Common mistakes

  • Explaining an overflow with "the answer was greater than 255" or "it has 9 bits". State the word size the question gave, then say the result cannot be represented in it.
  • Making a negative number by setting the top bit to 1 and leaving the rest (sign and magnitude). Two's complement means invert every bit of the positive value, then add 1.
  • Forgetting to pad a converted number to the register width the question asks for.
  • Mixing bits and bytes in a file-size calculation. Work in bits, divide by 8 once, and say whether you used 1000 or 1024.
  • Answering "describe" in everyday words ("the picture gets worse"). Use the syllabus terms: fewer colours, banding, lower image resolution, larger pixels.
Português
  • Mostre cálculos para conversões de base: decimal → binário por posições, binário → hexadecimal em nibbles (grupos de 4 bits).
  • Para complemento de dois o MSB é negativo; para inverter, inverte e soma 1; atenção para transbordamento quando o bit de sinal muda incorretamente.
  • Distinga bitmap (pixels; tamanho do arquivo $=$ largura $\times$ altura $\times$ profundidade de cor) de vetor (comandos de desenho; escala sem perdas).
  • O tamanho do arquivo de som depende de taxa de amostragem $\times$ profundidade de bits $\times$ tempo — mais de cada um significa melhor qualidade, mas um arquivo maior.
  • Compare compressão sem perdas vs. com perdas e dê um uso para cada uma.

Erros comuns

  • Explicar um overflow com "a resposta foi maior que 255" ou "ele tem 9 bits". Indique o tamanho de palavra dado na questão, depois diga que o resultado não pode ser representado nele.
  • Criar um número negativo definindo o bit superior como 1 e deixando o resto (sinal e magnitude). Complemento a dois significa inverter todos os bits do valor positivo, depois adicionar 1.
  • Esquecer de preencher com zeros à esquerda um número convertido para a largura do registro solicitada pela questão.
  • Misturar bits e bytes em um cálculo de tamanho de arquivo. Trabalhe em bits, divida por 8 apenas uma vez, e especifique se usou 1000 ou 1024.
  • Responder "descreva" em linguagem cotidiana ("a imagem fica pior"). Use os termos da ementa: menos cores, banding, menor resolução de imagem, pixels maiores.

Interactive lessons on this topic · ⁨Aulas interativas sobre este tópico⁩

Work through it step by step, with instant-check exercises. · ⁨Passe por ele passo a passo, com exercícios de verificação instantânea.⁩

Past Papers · ⁨Provas Anteriores⁩

More topics in Ciência da Computação do A-Level · ⁨Mais tópicos em Ciência da Computação do A-Level⁩

Log in or create account · ⁨Entrar ou criar conta⁩

IGCSE, A-Level & AP