| 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 |
Representação de informações
Ciência da Computação do A-Level · Tópico 1
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.…
Narração em inglês · Legendas em inglês + 中文 gravadas
1.1
Sistemas numéricos
Programa
Fonte: Programa Cambridge International
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.

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.

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.
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.
| Inglês | 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
Aritmética binária
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 sem sinal 无 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 sem sinal, 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 é.
O mesmo byte lido como unsigned e signed: apenas a interpretação acordada os distingue
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.
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).
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.
| Inglês | 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
Decimal Coded Binary (BCD)
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.

| Inglês | 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 — usos práticos
Hex é uma forma compacta de escrever binário (1 dígito hex = 4 bits):

- 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.
| Inglês | Chinês | Pinyin |
|---|---|---|
| memory address/ˈmeməri əˈdres/ | 内存地址 | nèi cún dì zhǐ |
1.1
Códigos de caracteres
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.

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.
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.
| Inglês | 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
Imagens bitmap
Programa
| 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 |
Fonte: Programa Cambridge International
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").

Tamanho do arquivo
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}$.

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.
| Inglês | 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
Gráficos vetoriais
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.

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.

Laboratório de conceitos de computação
Classifique exemplos concretos pelo conceito de computação que eles demonstram.
| Inglês | 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
Som
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.

Tamanho do arquivo
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.)

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.
| Inglês | 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
Compressão
Programa
| 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) |
Fonte: Programa Cambridge International
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.




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

Codificação por comprimento de corrida
Veja uma sequência de símbolos repetidos sendo comprimida em uma contagem — compressão sem perda simples.
| Inglês | 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 |
1.3
Definições aceitas pelo examinador
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
Dicas de prova
- 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.
Aulas interativas sobre este tópico
Passe por ele passo a passo, com exercícios de verificação instantânea.