Pular para o conteúdo
Matérias

Ciência da Computação do IGCSE

Dicas

Ciência da Computação IGCSE (0478) tem dez tópicos em dois papéis: representação de dados, transmissão de dados, hardware, software, internet, tecnologias automatizadas e emergentes, design de algoritmos, programação, bases de dados e lógica Booleana.

O Papel 1 é teoria, marcado em vocabulário preciso — a diferença entre RAM e ROM, um compilador e um interpretador, validação e verificação. Estas são marcas de definição, e uma paráfrase geralmente falha nelas.

O Papel 2 é resolução de problemas e programação, onde as marcas vão para um método funcional: tabelas de rastreio, pseudocódigo e código que realmente funcionaria. Garante as bases numéricas e a aritmética binária primeiro — aparecem por conta própria e novamente dentro de transmissão de dados, lógica e hardware.

  • 1

    Representação de dados

    Assistir aula
    1.1

    Por que os computadores usam binário

    Um computador só pode trabalhar com dois estados: ligado e desligado. Você escreve esses como 1 e 0. Um sistema que usa apenas dois dígitos 数字 é chamado binário 二进制 (base 2).

    Um campo de dígitos binários azuis, 0s e 1s
    Computadores representam todos os dados — números, texto, som e imagens — como sequências binárias de 0s e 1s

    Todo tipo de dado 数据 — números, texto, som e imagens — deve ser convertido para binário antes que um computador possa usá-lo. O computador processa esse binário usando portas lógicas 逻辑门 e armazena em registros 寄存器 (pequenos e rápidos armazenamentos dentro do processador 处理器).

    O chip de silício de um microprocessador sob ampliação
    Um microprocessador contém milhões de transistores minúsculos, cada um sendo um interruptor ligado (1) ou desligado (0) — a base física do binário
    Vocabulário Treinar
    Inglês Chinês Pinyin
    digit/ˈdɪdʒɪt/ 数字 shù zì
    binary/ˈbaɪnəri/ 二进制 èr jìn zhì
    data/ˈdeɪtə/ 数据 shù jù
    logic gate/ˈlɒdʒɪk ɡeɪt/ 逻辑门 luó jí mén
    processor/ˈprəʊsesə/ 处理器 chǔ lǐ qì
    register/ˈredʒɪstə/ 寄存器 jì cún qì
    number system/ˈnʌmbə ˈsɪstəm/ 数制 shù zhì
    denary/ˈdiːnəri/ 十进制 shí jìn zhì
    1.1

    Sistemas numéricos

    Programa
    Os candidatos devem ser capazes de: Notas e orientações
    1 Entenda como e por que os computadores usam binário para representar todas as formas de dados • Qualquer forma de dados precisa ser convertida para binário para ser processada por um computador • Dados são processados usando portas lógicas e armazenados em registradores
    2 (a) Entenda os sistemas numéricos decimal, binário e hexadecimal (b) Converta entre (i) decimal positivo e binário positivo (ii) decimal positivo e hexadecimal positivo (iii) hexadecimal positivo e binário positivo • Decimal é um sistema base 10 • Binário é um sistema base 2 • Hexadecimal é um sistema base 16 • Valores usados serão apenas inteiros • Conversões em ambas as direções, ex.: decimal para binário ou binário para decimal • Comprimento máximo do número binário de 16 bits
    3 Entenda como e por que o hexadecimal é usado como um método benéfico de representação de dados • As áreas dentro da ciência da computação onde o hexadecimal é usado devem ser identificadas • O hexadecimal é mais fácil para humanos entenderem do que o binário, pois é uma representação mais curta do binário
    4 (a) Some dois inteiros binários positivos de 8 bits (b) Entenda o conceito de transbordamento e por que ocorre na adição binária • Um erro de transbordamento ocorrerá se o valor for maior que 255 em um registrador de 8 bits • Um computador ou dispositivo tem um limite predefinido que pode representar ou armazenar, por exemplo 16 bits • Um erro de transbordamento ocorre quando um valor fora desse limite deve ser retornado
    5 Realize um deslocamento binário lógico em um inteiro binário positivo de 8 bits e entenda o efeito disso no inteiro binário positivo • Realize deslocamentos lógicos para a esquerda • Realize deslocamentos lógicos para a direita • Realize múltiplos deslocamentos • Bits deslocados do final do registrador são perdidos e zeros são deslocados para o extremo oposto do registrador • O inteiro binário positivo é multiplicado ou dividido de acordo com o deslocamento realizado • Os bit(s) mais significativo(s) ou menos significativo(s) são perdidos
    6 Use o sistema numérico complemento de dois para representar inteiros binários de 8 bits positivos e negativos • Converta um inteiro binário ou decimal positivo para um inteiro de complemento de dois de 8 bits e vice-versa • Converta um inteiro binário ou decimal negativo para um inteiro de complemento de dois de 8 bits e vice-versa

    Fonte: Programa Cambridge International

    Contagem em binário: 0 a 15

    Um sistema numérico 数制 é uma maneira de escrever números usando um conjunto fixo de dígitos. Você precisa de três deles.

    Sistema Base Dígitos usados
    Decimal 10 0–9
    Binário 2 0 e 1
    Hexadecimal 16 0–9 depois A–F
    • decimal 十进制 é o sistema normal de contagem (também chamado decimal).
    • binário usa apenas 0 e 1.
    • hexadecimal 十六进制 (hex) usa dezesseis dígitos: 0–9, depois A, B, C, D, E, F representam 10, 11, 12, 13, 14, 15.

    A base 基数 diz quantos dígitos diferentes um sistema usa.

    Valor posicional

    Cada coluna em um número tem um valor posicional 位值. No binário, os valores dobram da direita para a esquerda. Para um número de 8 bits eles são:

    128  64  32  16  8  4  2  1
    
    Um quadro de valor posicional de 8 bits com valores de 128 até 1, e os bits de 150 posicionados sob as colunas que somam 150
    Um quadro de valor posicional de 8 bits: os 1 ficam sob os valores que somam 150

    Um bit 位 é um único 0 ou 1. Oito bits fazem um byte 字节. Quatro bits (metade de um byte) é um nibble 半字节.

    Conversão entre sistemas numéricos

    Decimal → Binário. Escreva os valores posicionais. Coloque um 1 sob cada valor necessário para somar seu número; coloque 0 nos demais.

    Exemplo: mude decimal 150 para binário. $150 = 128 + 16 + 4 + 2$.

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

    Então $150$ = 10010110.

    Binário → Decimal. Some os valores posicionais onde há um 1. 10010110 $= 128 + 16 + 4 + 2 = 150$.

    Hexadecimal → Binário. Converta cada dígito hex para seu próprio grupo de 4 bits (um nibble).

    Exemplo: hex F08. $F = 1111$, $0 = 0000$, $8 = 1000$, então F08 = 1111 0000 1000.

    Três dígitos hex F, 0 e 8, cada um com uma seta apontando para seu próprio grupo de quatro bits
    Cada dígito hex mapeia para seu próprio nibble de 4 bits — F08 = 1111 0000 1000

    Binário → Hexadecimal. Agrupe os bits em nibbles de 4, começando da direita. Converta cada nibble para um dígito hex.

    Decimal → Hexadecimal. A maneira fácil é mudar para binário primeiro, depois binário para hex.

    Esta tabela ajuda com as letras hex:

    Decimal Binário Hex
    10 1010 A
    11 1011 B
    12 1100 C
    13 1101 D
    14 1110 E
    15 1111 F

    Questões da Cambridge usam números binários de até 16 bits de comprimento.

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

    $100 = 64 + 32 + 4$, então o binário é 01100100. Dividindo em nibbles, 0110 0100 $= 6$ e $4$, então o hexadecimal é 64.

    Por que hexadecimal é usado

    Hex é mais curto que binário e mais fácil para pessoas lerem e escreverem. Um dígito hex substitui 4 dígitos binários, assim você comete menos erros. O valor não muda — hex é apenas uma forma mais curta de mostrar o mesmo binário.

    Cientistas da computação usam hex para:

    • Endereços MAC e endereços IPv6
    • Códigos de cores em HTML (por exemplo, #FF0000 é vermelho)
    • endereços de memória 内存地址 e códigos de erro
    • Mostrar o conteúdo da memória (um "voltagem de memória")
    Explorar

    Binário, decimal e hexadecimal

    Digite um número e veja-o em binário, decimal e hexadecimal — e como as posições posicionais o constituem.

    Vocabulário Treinar
    Inglês Chinês Pinyin
    hexadecimal/ˌheksəˈdesɪml/ 十六进制 shí liù jìn zhì
    base/beɪs/ 基数 jī shù
    place value/pleɪs ˈvæljuː/ 位值 wèi zhí
    bit/bɪt/ 位 wèi
    byte/baɪt/ 字节 zì jié
    nibble/ˈnɪbl/ 半字节 bàn zì jié
    memory address/ˈmeməri əˈdres/ 内存地址 nèi cún dì zhǐ
    1.1

    Adição binária

    Você pode somar dois números binários de 8 bits, coluna por coluna da direita, assim como o decimal. As regras para uma coluna são:

    A B Bit resultado Carregamento
    0 0 0 0
    0 1 1 0
    1 0 1 0
    1 1 0 1

    Quando um carregamento também entra, $1 + 1 + 1 = 1$ com um carregamento de 1.

    Exemplo: some 01110110 (118) e 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)
    
    Adição binária de 8 bits de 118 e 48 com os bits de carregamento mostrados em vermelho acima das colunas esquerdas, resultando em 166
    Somando coluna por coluna; os carregamentos se propagam para a esquerda. 118 + 48 = 166

    Transbordamento

    Um registrador de 8 bits pode armazenar valores decimais de 0 a 255 apenas. Se uma adição resultar em um valor acima de 255, a resposta precisará de um 9º bit. O registrador não consegue armazenar esse bit extra, então ele é perdido. Isso é chamado de overflow 溢出 (um erro de overflow). Isso acontece quando um valor sai do limite que o registrador pode armazenar.

    Exemplo: 11001000 (200) $+$ 01001000 (72) $= 272$. Em binário isso é 1 00010000, que precisa de 9 bits. O 1 inicial não caberá em 8 bits, então a resposta armazenada estará errada.

    A soma de 200 e 72 resulta em 272, que em binário precisa de nove bits; o registrador de oito bits mantém apenas os oito inferiores e perde o nono bit, então a resposta armazenada é 16 em vez de 272
    Adicionar 200 e 72 precisa de 9 bits, mas um registrador de 8 bits descarta o nono, então a resposta está errada
    Vocabulário Treinar
    Inglês Chinês Pinyin
    overflow/ˌəʊvəˈfləʊ/ 溢出 yì chū
    logical binary shift/ˈlɒdʒɪkl ˈbaɪnəri ʃɪft/ 逻辑二进制移位 luó jí èr jìn zhì yí wèi
    least significant bit/liːst sɪɡˈnɪfɪkənt bɪt/ 最低有效位 zuì dī yǒu xiào wèi
    two's complement/tuːz ˈkɒmplɪmənt/ 补码 bǔ mǎ
    most significant bit/məʊst sɪɡˈnɪfɪkənt bɪt/ 最高有效位 zuì gāo yǒu xiào wèi
    character set/ˈkærɪktə set/ 字符集 zì fú jí
    1.1

    Deslocamento lógico binário

    Um deslocamento binário lógico 逻辑二进制移位 move todos os bits para a esquerda ou para a direita por um certo número de posições.

    • Bits que saem da extremidade do registrador são perdidos.
    • Zeros são adicionados na extremidade vazia.

    Um deslocamento à esquerda multiplica o número por 2 para cada posição movida. Um deslocamento à direita divide-o por 2 para cada posição; os bits mais à direita (os bits menos significativos 最低有效位) são perdidos.

    Exemplo: deslocar à esquerda 00110101 (53) em 2 posições.

    start:         0 0 1 1 0 1 0 1
    left shift 2:  1 1 0 1 0 1 0 0
    
    Um deslocamento lógico à esquerda de duas posições: as setas movem cada bit duas colunas para a esquerda, os dois bits mais à esquerda são perdidos e dois zeros entram pela direita
    Deslocamento à esquerda de 2: cada bit se move 2 posições para a esquerda, os bits superiores são perdidos e zeros preenchem a direita

    O resultado é 11010100 (212), que é $53 \times 4$. Os dois bits mais à esquerda foram perdidos e dois zeros entraram pela direita. Se um 1 for empurrado para fora, essa informação está perdida para sempre.

    1.1

    Complemento de dois

    Até agora os números eram positivos. O complemento de dois 补码 permite que um registrador de 8 bits armazene também números negativos.

    No complemento de dois, o bit mais à esquerda (o bit mais significativo 最高有效位, ou MSB) tem um valor posicional negativo:

    -128  64  32  16  8  4  2  1
    
    • Se o MSB for 0, o número é positivo.
    • Se o MSB for 1, o número é negativo.

    Para tornar um número positivo negativo: escreva o binário positivo, inverter cada bit (0↔1), depois some 1.

    Exemplo: tornar $-40$ negativo.

    • $+40$ = 00101000
    • inverter os bits = 11010111
    • somar 1 = 11011000

    Então $-40$ = 11011000. Verifique somando os valores posicionais: $-128 + 64 + 16 + 8 = -40$.

    Um gráfico de complemento de dois de 8 bits onde o bit mais significativo vale menos 128, com 11011000 destacado para dar menos 40
    O bit mais significativo vale −128, então 11011000 = −128 + 64 + 16 + 8 = −40

    Para ler um número no complemento de dois negativo, basta somar os valores posicionais (o MSB conta como $-128$). A faixa de um número de complemento de dois de 8 bits é de $-128$ a $+127$.

    1.2

    Representação de texto

    Programa
    Os candidatos devem ser capazes de: Notas e orientações
    1 Entenda como e por que um computador representa texto e o uso de conjuntos de caracteres, incluindo código americano padrão para intercâmbio de informações (ASCII) e Unicode • O texto é convertido em binário para ser processado por um computador • O Unicode permite uma gama maior de caracteres e símbolos do que o ASCII, incluindo diferentes idiomas e emojis • O Unicode requer mais bits por caractere do que o ASCII
    2 Entenda como e por que um computador representa som, incluindo os efeitos da taxa de amostragem e resolução de amostragem • Uma onda sonora é amostrada para que o som seja convertido em binário, que é processado por um computador • A taxa de amostragem é o número de amostras coletadas em um segundo • A resolução de amostragem é o número de bits por amostra • A precisão da gravação e o tamanho do arquivo aumentam à medida que a taxa de amostragem e a resolução aumentam
    3 Entenda como e por que um computador representa uma imagem, incluindo os efeitos da resolução e profundidade de cor • Uma imagem é uma série de pixels que são convertidos em binário, que é processado por um computador • A resolução é o número de pixels na imagem • A profundidade de cor é o número de bits usados para representar cada cor • O tamanho do arquivo e a qualidade da imagem aumentam à medida que a resolução e a profundidade de cor aumentam

    Fonte: Programa Cambridge International

    Os computadores armazenam texto atribuindo um número a cada caractere e, em seguida, armazenando esse número em binário. O conjunto de caracteres que um computador pode usar, junto com seus números, é um conjunto de caracteres 字符集.

    • ASCII usa 7 bits por caractere, portanto possui 128 caracteres diferentes. Isso é suficiente para letras, dígitos e símbolos comuns do inglês.
    • Unicode usa mais bits por caractere. Pode representar muitos mais caracteres — muitas línguas, além de símbolos e emoji 表情符号.

    Como o Unicode tem mais caracteres, ele precisa de mais bits por caractere que o ASCII, então o mesmo texto ocupa mais espaço de armazenamento 存储。

    ASCII usa sete bits por caractere para 128 caracteres, suficiente para inglês; Unicode usa mais bits por caractere para muito mais caracteres incluindo muitas línguas e emoji, mas ocupa mais armazenamento
    ASCII usa 7 bits para 128 caracteres; Unicode usa mais bits para muito mais caracteres, mas requer mais armazenamento
    Vocabulário Treinar
    Inglês Chinês Pinyin
    emoji/ɪˈməʊdʒi/ 表情符号 biǎo qíng fú hào
    1.2

    Representação de som

    Uma onda sonora 声波 é suave e está sempre mudando. Para armazená-la, o computador mede a altura da onda em momentos regulares. Isso é chamado de amostragem 采样, e cada medição é uma amostra.

    Uma onda sonora suave com linhas verticais em intervalos de tempo regulares medindo sua altura, marcando o intervalo de amostragem e a amplitude
    A amostragem registra a altura da onda (amplitude) em momentos regulares
    • taxa de amostragem 采样率 é o número de amostras coletadas por segundo (medido em Hz).
    • resolução de amostragem 采样分辨率 é o número de bits usados para cada amostra. A altura da onda em um ponto de amostragem é sua amplitude 振幅。

    Uma taxa de amostragem maior e uma resolução de amostragem maior fornecem uma gravação mais precisa, mas resultam em um arquivo maior.

    Explorar

    Representando som

    y = a sin(bt + c)

    Som é uma onda; amostragem registra sua altura várias vezes por segundo.

    Vocabulário Treinar
    Inglês Chinês Pinyin
    sampling/ˈsæmplɪŋ/ 采样 cǎi yàng
    sample rate/ˈsæmpl reɪt/ 采样率 cǎi yàng lǜ
    sample resolution/ˈsæmpl ˌrezəˈluːʃn/ 采样分辨率 cǎi yàng fēn biàn lǜ
    amplitude/ˈæmplɪtjuːd/ 振幅 zhèn fú
    1.2

    Representação de imagens

    Uma imagem de computador é composta por uma grade de pequenos pontos chamados pixels 像素。

    Uma grade 8 por 8 de pixels formando uma imagem colorida simples, com um quadrado rotulado como um único pixel
    Um bitmap é uma grade de pixels; a resolução é quantos pixels ela tem
    • resolução 分辨率 é o número de pixels na imagem (por exemplo, $1920 \times 1080$).
    • profundidade de cor 颜色深度 é o número de bits usados para armazenar a cor de cada pixel.

    Uma resolução maior e uma profundidade de cor maior proporcionam uma imagem de melhor qualidade, mas resultam em um arquivo maior.

    Vocabulário Treinar
    Inglês Chinês Pinyin
    pixel/ˈpɪksl/ 像素 xiàng sù
    resolution/ˌrezəˈluːʃn/ 分辨率 fēn biàn lǜ
    colour depth/ˈkʌlə depθ/ 颜色深度 yán sè shēn dù
    compression/kəmˈpreʃn/ 压缩 yā suō
    bandwidth/ˈbændwɪdθ/ 带宽 dài kuān
    transmission/trænˈsmɪʃn/ 传输 chuán shū
    lossless/ˈlɒsləs/ 无损 wú sǔn
    run-length encoding/rʌn leŋθ enˈkəʊdɪŋ/ 行程编码 xíng chéng biān mǎ
    lossy/ˈlɒsi/ 有损 yǒu sǔn
    1.3

    Medindo armazenamento de dados

    Programa
    Os candidatos devem ser capazes de: Notas e orientações
    1 Entenda como o armazenamento de dados é medido • Incluindo: – bit – nibble – byte – kibibyte (KiB) – mebibyte (MiB) – gibibyte (GiB) – tebibyte (TiB) – pebibyte (PiB) – exbibyte (EiB) • A quantidade da denominação anterior presente no tamanho do armazenamento de dados, ex.: – 8 bits em um byte – 1024 mebibytes em um gibibyte
    2 Calcule o tamanho de arquivo de uma imagem e de um áudio, usando informações fornecidas • As respostas devem ser dadas nas unidades especificadas na questão. Os cálculos devem usar a medida de 1024 e não 1000 • As informações fornecidas podem incluir: – resolução e profundidade de cor da imagem – taxa de amostragem, resolução e duração da faixa de áudio
    3 Entenda o propósito e a necessidade de compressão de dados • A compressão existe para reduzir o tamanho do arquivo • O impacto disso, ex.: – menor largura de banda necessária – menos espaço de armazenamento necessário – tempo de transmissão mais curto
    4 Entenda como os arquivos são comprimidos usando métodos de compressão com perda e sem perda • A compressão com perda reduz o tamanho do arquivo removendo permanentemente dados, ex.: reduzindo a resolução ou profundidade de cor, reduzindo a taxa ou resolução de amostragem • A compressão sem perda reduz o tamanho do arquivo sem perda permanente de dados, ex.: codificação por comprimento de sequência (RLE)

    Fonte: Programa Cambridge International

    O armazenamento de dados é medido nas unidades abaixo. Um nibble tem 4 bits e um byte tem 8 bits; a partir do kibibyte para cima, cada unidade é 1024 vezes a anterior (porque $1024 = 2^{10}$, que se encaixa no binário).

    Unidade Equivale a
    bit um único 0 ou 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
    Platos de disco rígido: o armazenamento é medido em bytes — saber o tamanho do arquivo exige largura × altura × profundidade de cor para imagens
    Platos de disco rígido: o armazenamento é medido em bytes — saber o tamanho do arquivo exige largura × altura × profundidade de cor para imagens
    Vocabulário Treinar
    Inglês Chinês Pinyin
    storage/ˈstɔːrɪdʒ/ 存储 cún chǔ
    sound wave/saʊnd weɪv/ 声波 shēng bō
    Assistir aula
    1.3

    Calculando tamanho de arquivo

    Tamanho do arquivo de imagem (em bits) $=$ resolução $\times$ profundidade de cor $=$ largura $\times$ altura $\times$ profundidade de cor.

    Exemplo: uma imagem tem $1024 \times 1024$ pixels com profundidade de cor de 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

    Tamanho do arquivo de som (em bits) $=$ taxa de amostragem $\times$ resolução de amostragem $\times$ duração em segundos.

    Sempre divida por 1024 (não 1000) para converter para KiB, MiB e assim por diante. Dê sua resposta na unidade solicitada pela questão.

    Exemplo resolvido. Um som é gravado por 30 segundos a uma taxa de amostragem de 8,000 Hz com uma resolução de amostra de 16 bits. Encontre o tamanho do arquivo em 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

    Compressão

    Compactação 压缩 torna um arquivo menor. Um arquivo menor:

    • ocupa menos espaço de armazenamento,
    • precisa de menos largura de banda 带宽 (a quantidade de dados que uma conexão pode transportar),
    • leva menos tempo para ser enviado (um tempo de transmissão 传输 mais curto).

    Existem dois tipos.

    Compactação sem perdas

    Compactação sem perdas 无损 torna o arquivo menor com nenhuma perda permanente de dados. O arquivo original pode ser reconstruído exatamente.

    Um método é codificação por comprimento de corrida 行程编码 (RLE). Ela substitui uma sequência de valores repetidos por uma cópia do valor e uma contagem de quantas vezes ele se repete. Por exemplo, WWWWWWWW (8 brancos) é armazenado como "8 W". Isso funciona bem quando os dados têm muitas repetições.

    Uma tira de 8 quadrados brancos seguidos de 4 vermelhos compactada nos pares 8 W e 4 R
    A codificação por comprimento de corrida armazena cada corrida uma única vez como uma contagem e um valor

    Compactação com perdas

    Compactação com perdas 有损 torna o arquivo muito menor ao remover permanentemente alguns dados. Os dados removidos não podem ser recuperados. Por exemplo:

    • reduzir a resolução ou profundidade de cor de uma imagem,
    • reduzir a taxa de amostragem ou a resolução de amostragem de um som.

    Use compactação sem perdas quando você precisar manter cada detalhe (arquivos de texto e programas). Use compactação com perdas para fotos, música e vídeo, onde uma pequena perda de qualidade vale um arquivo muito menor.

    Explorar

    Codificação por comprimento de corrida

    Observe símbolos repetidos serem comprimidos numa contagem — compressão sem perdas simples.

    1.3

    Dicas de prova

    • Converta decimal → binário subtraindo os valores posicionais (128, 64, 32 …); binário → decimal somando os valores posicionais que contêm um 1.
    • Para converter para hexadecimal, agrupe o binário em nibbles de 4 bits da direita; cada nibble corresponde exatamente a um dígito hexadecimal.
    • Overflow acontece quando um resultado precisa de mais bits do que o registrador tem (um registrador de 8 bits armazena apenas 0–255), então o bit extra é perdido.
    • Tamanho do arquivo em bits: para uma imagem, largura × altura × profundidade de cor; para som, taxa de amostragem × resolução × segundos. Divida por 8 para bytes, depois por 1024 para cada unidade maior.
    • Compactação sem perdas mantém todos os bits (texto; codificação por comprimento de corrida); compactação com perdas remove dados permanentemente (fotos, música) para um arquivo muito menor.
  • 2

    Transmissão de dados

    Assistir aula
    2.1

    O que é transmissão de dados?

    Transmissão de dados 数据传输 significa mover dados de um lugar para outro — por exemplo, do seu computador para um site, ou de um telefone para uma impressora.

    Os dados frequentemente viajam por um cabo. Dois exemplos comuns são mostrados abaixo.

    Um close-up de um cabo de rede terminando em um plugue de plástico transparente com pinos metálicos dourados
    Um cabo Ethernet com conector RJ45, usado frequentemente para transmitir dados em redes cabeadas
    Um cabo aberto para mostrar as finas fibras de vidro internas, com uma régua para escala
    Um cabo de fibra óptica transporta dados como pulsos de luz ao longo de finas fibras de vidro

    Antes de ser enviado, os dados são divididos em pequenas peças de tamanho igual chamadas pacotes 数据包. Cada pacote viaja separadamente e são reunidos na outra ponta.

    O uso de pacotes tem benefícios:

    • se um pacote for perdido ou danificado, apenas aquele pacote é reenviado, não todo o arquivo;
    • os pacotes podem tomar rotas diferentes, evitando assim rotas congestionadas ou quebradas;
    • muitos usuários podem compartilhar a mesma conexão ao mesmo tempo.
    2.1

    A estrutura de um pacote

    Programa
    Os candidatos devem ser capazes de: Notas e orientações
    1 (a) Entenda que os dados são divididos em pacotes para serem transmitidos
    (b) Descreva a estrutura de um pacote • Um pacote de dados contém um: – cabeçalho do pacote – payload – trailer • O cabeçalho do pacote inclui o: – endereço de destino – número do pacote – endereço do remetente
    (c) Descreva o processo de comutação por pacotes • Os dados são divididos em pacotes • Cada pacote pode seguir uma rota diferente • Um roteador controla a rota que um pacote segue • Os pacotes podem chegar fora de ordem • Assim que o último pacote chegar, os pacotes são reordenados
    2 (a) Descreva como os dados são transmitidos de um dispositivo para outro usando diferentes métodos de transmissão de dados • Incluindo: – serial – paralelo – simplex – half-duplex – full-duplex
    (b) Explique a adequação de cada método de transmissão de dados, para um cenário dado • Incluindo as vantagens e desvantagens de cada método
    3 Entenda a interface bus serial universal (USB) e explique como ela é usada para transmitir dados • Incluindo os benefícios e desvantagens da interface

    Fonte: Programa Cambridge International

    Cada pacote tem três partes.

    Um pacote mostrado como três blocos unidos — cabeçalho, corpo e rodapé — com o conteúdo do cabeçalho listado abaixo dele
    Um pacote possui um cabeçalho, um corpo (os dados) e um rodapé; o cabeçalho contém os endereços e o número do pacote
    Parte O que contém
    cabeçalho do pacote 包头 informações de controle (veja abaixo)
    corpo 有效载荷 os próprios dados sendo transportados
    rodapé 尾部 indica onde o pacote termina, além de uma verificação de erro

    O cabeçalho do pacote armazena:

    • o endereço IP do remetente 地址 (de onde o pacote veio),
    • o endereço IP do destinatário (para onde está indo),
    • o número do pacote (para que os pacotes possam ser reorganizados na ordem correta).
    2.1

    Comutação por pacotes

    Comutação por pacotes 数据包交换 é a forma como os pacotes são enviados através de uma rede.

    Dois pacotes viajando de um remetente para um destinatário através de uma malha de roteadores, cada um seguindo uma rota de cor diferente
    Os roteadores encaminham pacotes, e diferentes pacotes podem seguir rotas distintas até o mesmo destinatário
    • Dispositivos especiais chamados roteadores 路由器 leem o cabeçalho de cada pacote e escolhem a melhor rota para ele.
    • Cada pacote pode seguir seu próprio caminho, então os pacotes podem viajar por caminhos diferentes.
    • Os pacotes podem chegar fora de ordem.
    • Quando o último pacote chegar, os pacotes serão reorganizados usando seus números de pacote.
    Explorar

    Como os dados viajam em pacotes

    Passe por etapas com comutação de pacotes. Dividir um arquivo em pacotes endereçados é por que um pacote perdido só precisa ser reenviado, e por que muitos usuários podem compartilhar a mesma linha.

    Vocabulário Treinar
    Inglês Chinês Pinyin
    packet switching/ˈpækɪt ˈswɪtʃɪŋ/ 数据包交换 shù jù bāo jiāo huàn
    routers/ˈruːtəz/ 路由器 lù yóu qì
    2.1

    Métodos de transmissão de dados

    Serial e paralelo

    Serial 串行 Paralelo 并行
    Como um bit por vez, por um único fio vários bits ao mesmo tempo, por vários fios
    Distância bom para longas distâncias bom apenas para curtas distâncias
    Custo mais barato (menos fios) mais caro (mais fios)
    Erros os bits permanecem em ordem os bits podem chegar em momentos ligeiramente diferentes em fios longos

    Serial envia um bit após o outro ao longo de um único fio. Paralelo envia vários bits ao mesmo tempo ao longo de vários fios, sendo mais rápido em curtas distâncias.

    Transmissão serial como bits em linha em um único fio, e transmissão paralela como vários bits viajando juntos em vários fios
    Serial envia um bit por vez por um único fio; paralelo envia vários bits ao mesmo tempo por vários fios

    Simplex, meia-duplex e full-duplex

    Estes descrevem a direção pela qual os dados podem viajar.

    Dois dispositivos A e B com setas mostrando simplex (uma via), half-duplex (ambas as vias, mas uma de cada vez) e full-duplex (ambas as vias ao mesmo tempo)
    Simplex é apenas uma via; half-duplex é ambas as vias, mas uma de cada vez; full-duplex é ambas as vias ao mesmo tempo
    Método Direção
    simplex 单工 apenas uma direção (ex.: computador → impressora)
    half-duplex 半双工 ambas as direções, mas apenas uma de cada vez (ex.: walkie-talkie)
    full-duplex 全双工 ambas as direções ao mesmo tempo (ex.: chamada telefônica)

    Escolhendo um método

    A escolha depende da distância, da velocidade necessária, do custo e se os dados precisam viajar em ambas as direções ao mesmo tempo.

    Vocabulário Treinar
    Inglês Chinês Pinyin
    serial/ˈsɪərɪəl/ 串行 chuàn xíng
    parallel/ˈpærəlel/ 并行 bìng xíng
    simplex/ˈsɪmpleks/ 单工 dān gōng
    half-duplex/hɑːf ˈdjuːpleks/ 半双工 bàn shuāng gōng
    full-duplex/fʊl ˈdjuːpleks/ 全双工 quán shuāng gōng
    2.1

    USB

    O universal serial bus 通用串行总线 (USB) é uma interface 接口 comum (ponto de conexão) para ligar dispositivos a um computador.

    Vantagens:

    • o mesmo conector é usado por muitos dispositivos (um padrão);
    • o dispositivo é detectado automaticamente e o driver correto é carregado;
    • transmite energia, podendo carregar ou alimentar um dispositivo;
    • o conector só encaixa em uma direção, dificultando conexões incorretas.

    Desvantagens:

    • o cabo pode ter apenas um comprimento limitado (poucos metros);
    • versões mais antigas de USB são mais lentas que as novas;
    • as velocidades de transferência podem ser menores que alguns outros tipos de conexão.
    Cinco formatos diferentes de plugues USB lado a lado — micro, mini, type-B e type-A — com uma barra de escala de 5 cm
    Alguns dos formatos de conectores USB. Todos usam o mesmo padrão USB, então os dispositivos são detectados automaticamente.
    Vocabulário Treinar
    Inglês Chinês Pinyin
    universal serial bus/ˌjuːnɪˈvɜːsl ˈsɪərɪəl bʌs/ 通用串行总线 tōng yòng chuàn xíng zǒng xiàn
    interface/ˈɪntəfeɪs/ 接口 jiē kǒu
    interference/ˌɪntəˈfɪərəns/ 干扰 gān rǎo
    2.2

    Por que verificamos erros

    Programa
    Os candidatos devem ser capazes de: Notas e orientações
    1 Entenda a necessidade de verificar erros após a transmissão de dados e como esses erros podem ocorrer • Erros podem ocorrer durante a transmissão de dados devido a interferências, ex.: perda de dados, ganho de dados e alteração de dados
    2 Descreva os processos envolvidos em cada um dos seguintes métodos de detecção de erros para detectar erros nos dados após a transmissão: verificação de paridade (ímpar e par), soma de verificação e verificação por eco • Incluindo verificação de byte de paridade e bloco de paridade
    3 Descreva como um dígito de verificação é usado para detectar erros na entrada de dados e identifique exemplos de quando um dígito de verificação é usado, incluindo números internacionais padronizados de livros (ISBN) e códigos de barras
    4 Descreva como uma solicitação de repetição automática (ARQ) pode ser usada para estabelecer que os dados foram recebidos sem erros • Incluindo o uso de: – confirmações positivas/negativas – timeout

    Fonte: Programa Cambridge International

    Enquanto os dados viajam, interferência 干扰 pode alterá-los. Três coisas podem dar errado:

    • perda de dados — alguns bits não chegam;
    • ganho de dados — bits extras são adicionados;
    • alteração de dados — alguns bits são invertidos.

    Assim, o destinatário verifica se os dados chegaram corretamente.

    Assistir aula
    2.2

    Métodos de detecção de erros

    Verificação de paridade

    Uma verificação de paridade 奇偶校验 adiciona um bit extra, o bit de paridade 奇偶校验位, a cada byte. Existem dois tipos:

    Dados com quatro 1s (par); um bit de paridade 0 mantém a paridade par
    Um bit de paridade é adicionado para tornar o número de 1s par (ou ímpar)
    • paridade par — o número total de 1s no byte (incluindo o bit de paridade) deve ser par;
    • paridade ímpar — o número total de 1s deve ser ímpar.

    Exemplo (paridade par): os dados 1011001 têm quatro 1s, que já é par, então o bit de paridade é 0:

    parity bit + data
        0        1011001
    

    Para encontrar um erro: o destinatário conta os 1s. Se foi acordada paridade par, mas um byte chega com um número ímpar de 1s, ocorreu um erro durante a transmissão.

    Uma verificação de paridade não consegue detectar todos os erros. Se dois bits forem invertidos, a contagem ainda pode parecer correta.

    Exemplo resolvido. Um único bit de paridade informa que um erro aconteceu, mas não onde. Um bloco de paridade 奇偶校验 block pode localizar o bit exato. Vários bytes são enviados juntos, cada um com um bit de paridade de linha, e um byte de paridade extra parity byte 奇偶校验字节 na parte inferior contém um bit de paridade para cada coluna. A paridade par é usada abaixo, e um bit foi invertido durante a transmissão. Encontre-o.

              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
    

    A linha byte 3 viola a paridade par, e a coluna b3 também viola a paridade par. O bit invertido está onde elas se cruzam: byte 3, bit b3. Alterá-lo de volta de 1 para 0 corrige os dados. Um único bit de paridade apenas diz que um erro aconteceu; um bloco de paridade diz exatamente onde, permitindo que o destinatário até repare o erro.

    Soma de verificação

    Uma soma de verificação 校验和 é um valor calculado a partir de todos os dados antes do envio. O destinatário recalcula a soma de verificação a partir dos dados recebidos. Se os dois valores não coincidirem, ocorreu um erro e os dados são reenviados.

    Verificação por eco

    Em uma verificação por eco 回送校验, o destinatário reenvia os dados ao remetente. O remetente os compara com o original. Se diferirem, ocorreu um erro. (Isso exige que os dados sejam enviados duas vezes, sendo lento.)

    Automatic Repeat reQuest (ARQ)

    Automatic Repeat reQuest 自动重传请求 (ARQ) usa mensagens chamadas acknowledgements 确认.

    • O destinatário envia um acknowledgement positivo se um pacote chegou corretamente, ou um acknowledgement negativo se não chegou.
    • O remetente inicia um temporizador de timeout 超时. Se nenhum acknowledgement positivo retornar a tempo, o remetente reenvia o pacote.

    Dígito verificador

    Um dígito verificador 校验码 é um dígito extra colocado no final de um número, calculado a partir dos outros dígitos. É usado para encontrar erros quando um número é digitado.

    Quando o número é inserido, o dígito verificador é recalculado e comparado. Pode capturar:

    • um dígito incorreto digitado,
    • um erro de transposição 换位错误 (dois dígitos trocados, ex.: 21 digitado como 12),
    • um dígito omitido ou um dígito extra adicionado,
    • um erro fonético (um dígito que soa similar, ex.: 13 e 30).

    Dígitos verificadores são usados em códigos de barras 条形码 e ISBNs (números de livros).

    Explorar

    Laboratório de conceitos de computação

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

    Vocabulário Treinar
    Inglês Chinês Pinyin
    parity check/ˈpærɪti tʃek/ 奇偶校验 jī ǒu jiào yàn
    parity bit/ˈpærɪti bɪt/ 奇偶校验位 jī ǒu jiào yàn wèi
    parity block/ˈpærɪti blɒk/ 奇偶校验块 jī ǒu jiào yàn kuài
    parity byte/ˈpærɪti baɪt/ 奇偶校验字节 jī ǒu jiào yàn zì jié
    checksum/ˈtʃeksəm/ 校验和 jiào yàn hé
    echo check/ˈekəʊ tʃek/ 回送校验 huí sòng jiào yàn
    automatic repeat request/ˌɔːtəˈmætɪk rɪˈpiːt rɪˈkwest/ 自动重传请求 zì dòng zhòng chuán qǐng qiú
    acknowledgements/əkˈnɒlɪdʒmənts/ 确认 què rèn
    timeout/ˈtaɪmaʊt/ 超时 chāo shí
    check digit/tʃek ˈdɪdʒɪt/ 校验码 jiào yàn mǎ
    transposition error/trænspəˈzɪʃn ˈerə/ 换位错误 huàn wèi cuò wù
    barcodes/ˈbɑːkəʊdz/ 条形码 tiáo xíng mǎ
    2.3

    Criptografia

    Programa
    Os candidatos devem ser capazes de: Notas e orientações
    1 Entenda a necessidade e o propósito da criptografia ao transmitir dados
    2 Entenda como os dados são criptografados usando criptografia simétrica e assimétrica • A criptografia assimétrica inclui o uso de chaves pública e privada

    Fonte: Programa Cambridge International

    Por que precisamos de criptografia

    Criptografia 加密 embaralha os dados para que não possam ser compreendidos se forem interceptados 拦截 (capturados) por pessoa errada. Os dados legíveis são chamados de texto claro 明文; após a criptografia tornam-se texto cifrado 密文.

    A criptografia não impede que os dados sejam interceptados. Ela apenas impede que os dados sejam compreendidos.

    Criptografia simétrica

    Criptografia simétrica 对称加密 usa uma única chave 密钥 tanto para criptografar quanto para descriptografar os dados. O remetente e o destinatário devem compartilhar essa mesma chave secreta. O risco é que a própria chave possa ser roubada durante o compartilhamento.

    Criptografia assimétrica

    Criptografia assimétrica 非对称加密 usa duas chaves diferentes:

    • uma chave pública 公钥 que qualquer um pode ter, usada para criptografar;
    • uma chave privada 私钥 que é mantida em segredo, usada para descriptografar.

    Dados criptografados com a chave pública só podem ser descriptografados com a chave privada correspondente, portanto a chave nunca precisa ser compartilhada. Isso é mais seguro do que compartilhar uma única chave secreta.

    Criptografia simétrica usando uma chave compartilhada para ambas as etapas, e criptografia assimétrica usando uma chave pública para criptografar e uma chave privada para descriptografar
    Simétrica usa uma chave compartilhada; assimétrica usa uma chave pública para criptografar e uma privada para descriptografar
    Explorar

    A cifra de César

    Desloque cada letra para encriptar uma mensagem — a ideia mais simples de uma cifra e a sua chave.

    Vocabulário Treinar
    Inglês Chinês Pinyin
    encryption/enˈkrɪpʃn/ 加密 jiā mì
    intercepted/ˌɪntəˈseptɪd/ 拦截 lán jié
    plaintext/ˈpleɪntekst/ 明文 míng wén
    ciphertext/ˈsaɪfətekst/ 密文 mì wén
    symmetric encryption/sɪˈmetrɪk enˈkrɪpʃn/ 对称加密 duì chèn jiā mì
    key/kiː/ 密钥 mì yào
    asymmetric encryption/ˌeɪsɪˈmetrɪk enˈkrɪpʃn/ 非对称加密 fēi duì chèn jiā mì
    public key/ˈpʌblɪk kiː/ 公钥 gōng yào
    private key/ˈpraɪvət kiː/ 私钥 sī yào
    2.3

    Dicas de prova

    • Os dados são enviados em pacotes (um cabeçalho com os endereços e número do pacote, um payload e um trailer). Os pacotes podem seguir rotas diferentes e chegar fora de ordem, sendo depois reordenados pelos seus números de pacote.
    • Corresponda os tipos de transmissão: serial (um bit por vez, bom para longas distâncias) vs paralelo (vários bits ao mesmo tempo, curtas distâncias); simplex / half-duplex / full-duplex descrevem a direção.
    • Um único bit de paridade mostra apenas que um erro aconteceu; um bloco de paridade localiza o bit exato errado — a linha e a coluna que falham.
    • Aprenda os métodos de detecção de erros e o que cada um faz: verificação de paridade, soma de verificação, verificação por eco, ARQ e dígito verificador (para números digitados).
    • Simétrica usa uma chave compartilhada; assimétrica usa uma chave pública para criptografar e uma chave privada para descriptografar, evitando o compartilhamento de chaves secretas.
    Vocabulário Treinar
    Inglês Chinês Pinyin
    data transmission/ˈdeɪtə trænˈsmɪʃn/ 数据传输 shù jù chuán shū
    packets/ˈpækɪts/ 数据包 shù jù bāo
    packet header/ˈpækɪt ˈhedə/ 包头 bāo tóu
    payload/ˈpeɪləʊd/ 有效载荷 yǒu xiào zài hè
    trailer/ˈtreɪlə/ 尾部 wěi bù
    address/əˈdres/ 地址 dì zhǐ
  • 3

    Hardware

    Assistir aula
    3.1

    Unidade central de processamento (CPU)

    Programa
    Os candidatos devem ser capazes de: Notas e orientações
    1 (a) Entenda o papel da unidade central de processamento (CPU) em um computador • A CPU processa instruções e dados que são inseridos no computador para que o resultado possa ser exibido
    (b) Entenda o que se entende por microprocessador • Um microprocessador é um tipo de circuito integrado em um único chip
    2 (a) Entenda o propósito dos componentes em uma CPU, em um computador que tem uma arquitetura Von Neumann • Incluindo: – unidades: unidade aritmética e lógica (ALU) e unidade de controle (CU) – registradores: contador de programa (PC), registrador de endereço de memória (MAR), registrador de dados de memória (MDR), registrador de instrução corrente (CIR) e acumulador (ACC) – barramentos: barramento de endereços, barramento de dados e barramento de controle
    (b) Descreva o processo do ciclo busca–decodificação–execução (FDE), incluindo o papel de cada componente no processo • Como instruções e dados são buscados da memória de acesso aleatório (RAM) para dentro da CPU, como eles são processados usando cada componente e como são então executados • Armazenando dados e endereços em registradores específicos • Usando barramentos para transmitir dados, endereços e sinais • Usando unidades para buscar, decodificar e executar dados e instruções
    3 Entenda o que se entende por núcleo, cache e relógio em uma CPU e explique como eles podem afetar o desempenho de uma CPU • O número de núcleos, tamanho do cache e velocidade do relógio podem afetar o desempenho de uma CPU
    4 Entenda o propósito e o uso de um conjunto de instruções para uma CPU • Um conjunto de instruções é uma lista de todos os comandos que podem ser processados por uma CPU, e os comandos são código de máquina
    5 Descreva o propósito e as características de um sistema embarcado e identifique dispositivos em que eles são comumente usados • Um sistema embarcado é usado para realizar funções dedicadas. Por exemplo, em eletrodomésticos, carros, sistemas de segurança, sistemas de iluminação ou máquinas expendedoras. Isso é diferente de um computador de propósito geral que é usado para realizar muitas funções diferentes. Por exemplo, em um computador pessoal (PC) ou laptop

    Fonte: Programa Cambridge International

    O ciclo fetch-decode-execute

    A unidade central de processamento 中央处理器 (CPU) é a parte do computador que processa dados e executa instruções 指令. Ela roda programas repetindo um ciclo, milhões de vezes a cada segundo.

    Um chip de computador quadrado com tampa metálica brilhante e o nome do modelo impresso nele
    Unidade central de processamento (CPU): o chip que processa dados e executa instruções

    Componentes da CPU

    Componente O que faz
    unidade aritmética e lógica 算术逻辑单元 (ALU) realiza cálculos (soma, subtração) e operações lógicas (comparação)
    unidade de controle 控制单元 (CU) envia sinais de controle para gerenciar todas as partes e dizer o que fazer
    registros 寄存器 armazenamentos muito pequenos e rápidos que seguram uma peça de dados por vez

    Os componentes são conectados por barramentos 总线 — conjuntos de fios que transportam informações:

    • o barramento de endereços 地址总线 carrega endereços de memória (uma direção);
    • o barramento de dados 数据总线 carrega dados e instruções (ambas as direções);
    • o barramento de controle 控制总线 carrega sinais de controle.
    Diagrama em blocos de uma CPU contendo a unidade de controle, ALU e registros, conectada à memória principal pelos barramentos de endereço, dados e controle
    A CPU contém a unidade de controle, a ALU e os registros; três barramentos a ligam à memória principal

    Registros especiais

    Esses registros são usados durante o ciclo de busca-execução.

    Registro Finalidade
    contador de programa 程序计数器 (PC) segura o endereço da próxima instrução
    registro de endereço de memória 内存地址寄存器 (MAR) segura o endereço para leitura ou gravação
    registro de dados de memória 内存数据寄存器 (MDR) segura o dado ou instrução recém-buscado
    registro de instrução atual 当前指令寄存器 (CIR) segura a instrução sendo executada agora
    acumulador 累加器 (ACC) segura o resultado dos cálculos da ALU

    O ciclo de busca-execução

    O ciclo de busca-execução 取指执行周期 tem três etapas, repetidas sucessivamente:

    1. Busca — a instrução é copiada da memória 内存 para a CPU (usando PC, MAR e MDR). O PC então aumenta em 1.
    2. Decodificação — a unidade de controle determina o significado da instrução.
    3. Execução — a instrução é realizada (a ALU pode fazer um cálculo, com o resultado indo para o acumulador).
    O ciclo de busca-decodificação-execução desenhado como três caixas conectadas em um loop
    O processador repete três etapas: buscar a instrução, decodificá-la e, em seguida, executá-la

    Memória cache

    Cache 高速缓存 é uma pequena quantidade de memória muito rápida dentro ou próxima à CPU. Ela armazena dados e instruções que a CPU usa frequentemente. A CPU pode ler da cache muito mais rápido do que da memória principal, fazendo com que o computador funcione mais rápido.

    O que afeta o desempenho da CPU

    Característica Efeito
    número de núcleos 核心 cada núcleo pode executar instruções sozinho, então mais núcleos podem realizar mais trabalho ao mesmo tempo
    tamanho do cache um cache maior armazena mais dados prontos para a CPU, reduzindo as esperas
    velocidade de clock 时钟速度 número de ciclos por segundo; velocidade de clock mais alta executa mais instruções por segundo

    Exemplo resolvido. Dois computadores são idênticos, exceto que o A tem uma CPU single-core de 3.0 GHz com 2 MB de cache, e o B tem uma CPU quad-core de 2.4 GHz com 8 MB de cache. Qual é melhor para edição de vídeo, e por quê? A edição de vídeo divide-se em muitas tarefas que podem ser executadas simultaneamente, então os quatro núcleos do B podem processar vários fluxos em paralelo enquanto o A só pode trabalhar em um por vez. O cache maior do B também mantém mais dados frequentemente usados próximos à CPU, reduzindo a frequência de buscas na RAM. O B é a melhor escolha, mesmo com a menor velocidade de clock do A. Nunca responda apenas pela velocidade de clock: avalie núcleos, cache e velocidade de clock juntos, vinculando cada um à tarefa sendo realizada.

    Sistemas embarcados

    Um sistema embarcado 嵌入式系统 é um pequeno computador construído dentro de um dispositivo maior para realizar uma tarefa fixa. Ele é dedicado a essa tarefa, geralmente é pequeno e de baixo custo, e não possui sistema operacional geral. Exemplos: máquina de lavar, micro-ondas, set-top box.

    Uma placa de circuito verde densamente povoada com chips, memória e conectores, retirada de dentro de um GPS
    A placa-mãe dentro de um GPS: um sistema embarcado é um pequeno computador dedicado como este, integrado a um dispositivo para realizar uma tarefa fixa
    Explorar

    O ciclo fetch-execute

    Gire em torno do loop que a CPU repete bilhões de vezes por segundo — busque a instrução, decodifique o que ela significa, execute-a, e faça tudo novamente.

    Vocabulário Treinar
    Inglês Chinês Pinyin
    Cache/kæʃ/ 高速缓存 gāo sù huǎn cún
    embedded system/emˈbedɪd ˈsɪstəm/ 嵌入式系统 qiàn rù shì xì tǒng
    Assistir aula
    3.2

    Dispositivos de entrada

    Programa
    Os candidatos devem ser capazes de: Notas e orientações
    1 Entenda o que se entende por um dispositivo de entrada e por que ele é necessário • Incluindo: – leitor de código de barras – câmera digital – teclado – microfone – mouse óptico – leitor de código QR – tela sensível ao toque (ressistiva, capacitiva e infravermelho) – scanners bidimensionais (2D) e tridimensionais (3D)
    2 Entenda o que se entende por um dispositivo de saída e por que ele é necessário • Incluindo: – atuador – projetor DLP (digital light processing) – impressora jato de tinta – impressora a laser – tela LED (light emitting diode) – projetor LCD (liquid crystal display) – tela LCD – alto-falante – impressora 3D
    3 (a) Entenda o que se entende por um sensor e os propósitos dos sensores • Limitado a: – acústico – acelerômetro – fluxo – gás – umidade – infravermelho – nível – luz – campo magnético – umidade do solo – pH – pressão – proximidade – temperatura
    (b) Identifique o tipo de dados capturados por cada sensor e entenda quando cada sensor seria usado, incluindo a seleção do sensor mais adequado para um contexto dado

    Fonte: Programa Cambridge International

    Um dispositivo de entrada envia dados para dentro do computador.

    Dispositivo Como funciona
    leitor de código de barras 条形码扫描器 projeta luz sobre as barras e lê o padrão refletido de volta
    leitor de código QR 二维码扫描器 uma câmera lê um padrão quadrado de blocos preto e branco
    teclado pressionar uma tecla envia um código para aquele caractere
    mouse óptico 光电鼠标 uma luz e um sensor rastreiam o movimento sobre uma superfície
    microfone converte ondas sonoras em sinal elétrico
    câmera digital uma lente foca a luz em um sensor que registra pixels
    sensores 传感器 medem uma grandeza física (como temperatura ou luz) e a enviam como dados
    tela sensível ao toque 触摸屏 detecta onde seu dedo toca a tela
    Um close-up de um teclado de computador preto com as teclas alfabéticas QWERTY
    Um teclado: cada pressionamento de tecla envia um código para aquele caractere
    Um mouse óptico branco sobre uma mesa, com a luz óptica brilhando por baixo
    Um mouse óptico: uma luz e um sensor rastreiam seu movimento na mesa
    Um scanner plano branco em formato de caixa com tampa fechada que se levanta para digitalizar uma página
    Um scanner de mesa plana: ele projeta luz sobre uma página para copiá-la para o computador
    Um scanner portátil em suporte, conectado a um computador por cabo USB
    Um leitor de código de barras lê o padrão de barras e o envia para o computador
    A parte frontal de uma pequena câmera digital vermelha, mostrando sua lente e flash
    Uma câmera digital: uma lente foca a luz sobre um sensor que registra os pixels
    Um microfone portátil com cabeça redonda de malha metálica
    Um microfone converte ondas sonoras em um sinal elétrico
    Um pequeno sensor de temperatura azul e preto em uma miniplaca de circuito com três pinos
    Um sensor mede uma grandeza física (neste caso, temperatura) e a envia como dados

    Uma tela sensível ao toque pode funcionar de três maneiras:

    • resistiva 电阻式 — duas camadas são pressionadas juntas onde você toca;
    • capacitiva 电容式 — ela感知 o微小电荷 do seu dedo;
    • infra-vermelha 红外线 — seu dedo interrompe uma grade de raios de luz.
    Um dedo tocando a tela de um smartphone para rolar uma página
    Uma tela sensível ao toque detecta onde seu dedo a toca
    Explorar

    Laboratório de Dispositivos e Armazenamento

    Classifique exemplos de computação pelo que eles fazem em um sistema.

    Vocabulário Treinar
    Inglês Chinês Pinyin
    barcode scanner/ˈbɑːkəʊd ˈskænə/ 条形码扫描器 tiáo xíng mǎ sǎo miáo qì
    QR code scanner/ˌkjuː ˈɑː kəʊd ˈskænə/ 二维码扫描器 èr wéi mǎ sǎo miáo qì
    sensors/ˈsensəz/ 传感器 chuán gǎn qì
    touch screen/tʌtʃ skriːn/ 触摸屏 chù mō píng
    resistive/rɪˈzɪstɪv/ 电阻式 diàn zǔ shì
    capacitive/kəˈpæsɪtɪv/ 电容式 diàn róng shì
    infrared/ˌɪnfrəˈred/ 红外线 hóng wài xiàn
    3.2

    Dispositivos de saída

    Um dispositivo de saída envia dados para fora do computador para o usuário.

    Dispositivo Como funciona
    atuador 执行器 converte um sinal elétrico em movimento (ex.: motor ou válvula)
    tela LCD/LED mostra imagens usando uma grade de pontos coloridos minúsculos
    projetor 投影仪 projeta uma imagem ampliada em uma parede ou tela
    impressora jato de tinta 喷墨打印机 pulveriza pequenas gotas de tinta sobre papel
    impressora laser 激光打印机 usa um laser e pó (toner) fixado no papel por calor
    impressora 3D constrói um objeto sólido camada por camada
    alto-falante 扬声器 converte um sinal elétrico em som
    Uma impressora jato de tinta de mesa com a bandeja de papel aberta no topo
    Uma impressora jato de tinta pulveriza pequenas gotas de tinta no papel
    Uma impressora laser de mesa branca e cinza com suas bandejas de papel estendidas
    Uma impressora a laser usa um laser e pó (toner) fixado no papel por calor
    Uma impressora 3D: uma estrutura metálica preta segurando uma cama de impressão plana e uma cabeça de impressão móvel
    Uma impressora 3D constrói um objeto sólido camada por camada
    Um monitor de computador de tela larga e plana sobre uma base redonda
    Um monitor LCD/LED mostra imagens usando uma grade de pontos coloridos minúsculos
    Um par de pequenos alto-falantes pretos para computador em uma mesa
    Um alto-falante converte um sinal elétrico em som
    Um par de fones de ouvido grandes azuis
    Fones de ouvido convertem um sinal elétrico em som para um ouvinte
    Vários motores elétricos de diferentes tamanhos ao lado de uma bateria de 9 volts para escala
    Um atuador, como um motor, converte um sinal elétrico em movimento
    Vocabulário Treinar
    Inglês Chinês Pinyin
    actuator/ˈæktʃuːeɪtə/ 执行器 zhí xíng qì
    projector/prəˈdʒektə/ 投影仪 tóu yǐng yí
    inkjet printer/ɪŋkˈdʒet ˈprɪntə/ 喷墨打印机 pēn mò dǎ yìn jī
    laser printer/ˈleɪzə ˈprɪntə/ 激光打印机 jī guāng dǎ yìn jī
    speaker/ˈspiːkə/ 扬声器 yáng shēng qì
    Primary storage/ˈpraɪməri ˈstɔːrɪdʒ/ 主存储器 zhǔ cún chǔ qì
    random access memory/ˈrændəm ˈækses ˈmeməri/ 随机存取存储器 suí jī cún qǔ cún chǔ qì
    read only memory/riːd ˈəʊnli ˈmeməri/ 只读存储器 zhī dú cún chǔ qì
    volatile/ˈvɒlətaɪl/ 易失性 yì shī xìng
    non-volatile/nɒn ˈvɒlətaɪl/ 非易失性 fēi yì shī xìng
    Secondary storage/ˈsekəndəri ˈstɔːrɪdʒ/ 辅助存储器 fǔ zhù cún chǔ qì
    magnetic storage/mæɡˈnetɪk ˈstɔːrɪdʒ/ 磁存储 cí cún chǔ
    optical storage/ˈɒptɪkl ˈstɔːrɪdʒ/ 光存储 guāng cún chǔ
    solid state storage/ˈsɒlɪd steɪt ˈstɔːrɪdʒ/ 固态存储 gù tài cún chǔ
    flash memory/flæʃ ˈmeməri/ 闪存 shǎn cún
    3.3

    Armazenamento primário: RAM e ROM

    Programa
    Os candidatos devem ser capazes de: Notas e orientações
    1 Entenda o que se entende por armazenamento primário • O armazenamento primário é acessado diretamente pela CPU • Incluindo o papel de: – memória de acesso aleatório (RAM) – memória apenas leitura (ROM) • Incluindo por que um computador precisa tanto de RAM quanto de ROM, e a diferença entre eles
    2 Entenda o que se entende por armazenamento secundário • O armazenamento secundário não é acessado diretamente pela CPU e é necessário para o armazenamento mais permanente de dados
    3 Descreva o funcionamento do armazenamento magnético, óptico e de estado sólido (memória flash) e dê exemplos de cada um • O armazenamento magnético usa pratos divididos em trilhas e setores. Os dados são lidos e gravados usando eletromagnetos. Incluindo disco rígido (HDD) • O armazenamento óptico usa lasers para criar e ler pits e lands. Inclui: CD, DVD e Blu-ray • O estado sólido (memória flash) usa tecnologia NAND ou NOR. Transistores são usados como portas de controle e portas flutuantes. Inclui: unidade de estado sólido (SSD), cartão SD e drive USB
    4 Descreva o que se entende por memória virtual, como ela é criada e utilizada e por que é necessária • Páginas de dados são transferidas entre RAM e memória virtual conforme necessário
    5 Compreenda o que se entende por armazenamento em nuvem • O armazenamento em nuvem pode ser acessado remotamente, em comparação ao armazenamento de dados localmente
    6 Explique as vantagens e desvantagens de armazenar dados na nuvem em comparação com o armazenamento local • Servidores físicos e armazenamento são necessários para armazenar dados no armazenamento em nuvem

    Fonte: Programa Cambridge International

    Armazenamento primário 主存储器 é memória que a CPU pode usar diretamente. Existem dois tipos.

    RAM: volátil, pode mudar, guarda programas em execução. ROM: não volátil, não pode mudar, guarda as instruções de inicialização
    A RAM é volátil e guarda programas em execução; a ROM é não volátil e de leitura única
    RAM ROM
    Nome completo memória de acesso aleatório 随机存取存储器 memória de leitura única 只读存储器
    Leitura/escrita leitura e gravação leitura única
    Mantém dados sem energia? não — é volátil 易失性 sim — é não volátil 非易失性
    Guarda programas e dados em uso agora instruções de inicialização (como iniciar o computador)

    Ambos são necessários: a ROM diz ao computador como iniciar, e a RAM guarda os programas que você executa.

    Um módulo longo e fino de placa de circuito verde carregando fileiras de pequenos chips de memória dourados e um conector de borda
    Um pente de RAM (memória de acesso aleatório): ele guarda os programas e dados em uso agora
    3.3

    Armazenamento secundário

    Armazenamento secundário 辅助存储器 mantém dados permanentemente, mesmo quando a energia está desligada. É não volátil e usado para armazenamento de longo prazo. Existem três tipos.

    Tipo Como armazena dados Exemplos
    armazenamento magnético 磁存储 dados são armazenados como pontos magnetizados em discos giratórios disco rígido (HDD), fita magnética
    armazenamento óptico 光存储 dados são armazenados como marcas lidas por um laser CD, DVD, Blu-ray
    armazenamento de estado sólido 固态存储 dados são armazenados em memória flash 闪存, sem peças móveis SSD, pendrive, cartão de memória
    Dentro de um disco rígido aberto, mostrando o disco prateado e redondo (platter) e o braço de leitura/escrita repousando sobre ele
    Interior de um disco rígido (HDD): o disco brilhante gira e o braço lê os dados magnetizados
    Quatro cartuchos quadrados de fita magnética, cada um contendo um carretel de fita magnética fina
    A fita magnética armazena dados em uma longa faixa magnética; é barata para grandes backups
    Um disco redondo brilhante refletindo cores do arco-íris de sua superfície de dados
    Um disco óptico como um CD ou DVD: um laser lê as marcas em sua superfície brilhante
    Um drive de estado sólido Samsung de 2.5 polegadas, uma caixa metálica cinza plana sem partes móveis visíveis
    Uma unidade de estado sólido (SSD) armazena dados em chips de memória flash e não possui peças móveis
    Um pequeno pendrive branco com alça vermelha, rotulado 32 GB
    Um pendrive armazena dados em memória flash e não possui peças móveis
    Uma pirâmide com registradores no topo, depois cache, depois RAM, depois armazenamento secundário na base, com uma seta mais rápido-menor para mais lento-maior
    O armazenamento forma uma hierarquia: registradores e cache são os mais rápidos, mas menores; o armazenamento secundário é o mais lento, mas maior
    Explorar

    Laboratório de Dispositivos e Armazenamento

    Classifique exemplos de computação pelo que eles fazem em um sistema.

    Vocabulário Treinar
    Inglês Chinês Pinyin
    cores/kɔːz/ 核心 hé xīn
    memory/ˈmeməri/ 内存 nèi cún
    optical mouse/ˈɒptɪkl maʊs/ 光电鼠标 guāng diàn shǔ biāo
    3.3

    Memória virtual

    Quando a RAM fica cheia, o computador pode usar parte do armazenamento secundário como memória extra, falsa. Isso é chamado de memória virtual 虚拟内存.

    Dados que não são necessários agora são movidos da RAM para o disco, o que libera espaço na RAM para outros programas. Isso permite que você execute mais programas do que a RAM sozinha poderia armazenar. É mais lento, porque o armazenamento secundário é muito mais lento que a RAM.

    RAM segurando dois programas ativos e um slot livre, com uma seta movendo um programa não utilizado para fora para o disco
    Quando a RAM está cheia, dados não utilizados são movidos para o disco para liberar RAM — mais lento, mas permite que mais programas rodem
    Vocabulário Treinar
    Inglês Chinês Pinyin
    virtual memory/ˈvɜːtʃuːəl ˈmeməri/ 虚拟内存 xū nǐ nèi cún
    Cloud storage/klaʊd ˈstɔːrɪdʒ/ 云存储 yún cún chǔ
    network interface card/ˈnetwɜːk ˈɪntəfeɪs kɑːd/ 网络接口卡 wǎng luò jiē kǒu kǎ
    static/ˈstætɪk/ 静态 jìng tài
    dynamic/daɪˈnæmɪk/ 动态 dòng tài
    3.3

    Armazenamento em nuvem

    Programa
    Os candidatos devem ser capazes de: Notas e orientações
    1 Entenda o que se entende por armazenamento primário • O armazenamento primário é acessado diretamente pela CPU • Incluindo o papel de: – memória de acesso aleatório (RAM) – memória apenas leitura (ROM) • Incluindo por que um computador precisa tanto de RAM quanto de ROM, e a diferença entre eles
    2 Entenda o que se entende por armazenamento secundário • O armazenamento secundário não é acessado diretamente pela CPU e é necessário para o armazenamento mais permanente de dados
    3 Descreva o funcionamento do armazenamento magnético, óptico e de estado sólido (memória flash) e dê exemplos de cada um • O armazenamento magnético usa pratos divididos em trilhas e setores. Os dados são lidos e gravados usando eletromagnetos. Incluindo disco rígido (HDD) • O armazenamento óptico usa lasers para criar e ler pits e lands. Inclui: CD, DVD e Blu-ray • O estado sólido (memória flash) usa tecnologia NAND ou NOR. Transistores são usados como portas de controle e portas flutuantes. Inclui: unidade de estado sólido (SSD), cartão SD e drive USB
    4 Descreva o que se entende por memória virtual, como ela é criada e utilizada e por que é necessária • Páginas de dados são transferidas entre RAM e memória virtual conforme necessário
    5 Compreenda o que se entende por armazenamento em nuvem • O armazenamento em nuvem pode ser acessado remotamente, em comparação ao armazenamento de dados localmente
    6 Explique as vantagens e desvantagens de armazenar dados na nuvem em comparação com o armazenamento local • Servidores físicos e armazenamento são necessários para armazenar dados no armazenamento em nuvem

    Fonte: Programa Cambridge International

    Armazenamento em nuvem 云存储 mantém seus dados em servidores físicos remotos, acessados pela internet, em vez de no seu próprio dispositivo.

    • Vantagens: acesso de qualquer lugar em qualquer dispositivo; nenhum hardware de armazenamento local para comprar ou manter; fácil de compartilhar arquivos e fazer backup automaticamente.
    • Desvantagens: precisa de uma conexão com a internet funcionando; custo de assinatura recorrente; segurança e privacidade dependem do provedor; você depende desse provedor permanecer disponível e em funcionamento.
    Gabinetes de servidores de data center: o armazenamento em nuvem mantém seus arquivos em servidores remotos aos quais você acessa pela rede
    Gabinetes de servidores de data center: o armazenamento em nuvem mantém seus arquivos em servidores remotos aos quais você acessa pela rede
    3.4

    Hardware de rede

    Programa
    Os candidatos devem ser capazes de: Notas e orientações
    1 Entenda que um computador precisa de uma placa de interface de rede (NIC) para acessar uma rede
    2 Compreenda o que se entende por, e a finalidade de, um endereço de controle de acesso de mídia (MAC), incluindo sua estrutura • Uma placa de interface de rede recebe um endereço MAC no momento da fabricação • Endereços MAC geralmente são escritos em hexadecimal • Endereços MAC são criados usando o código do fabricante e o código de série
    3 (a) Compreenda o que se entende por, e a finalidade de, um endereço de protocolo de internet (IP) (b) Entenda que existem diferentes tipos de endereço IP • Um endereço IP é atribuído pela rede e pode ser estático ou dinâmico • Incluindo as características e diferenças entre IPv4 e IPv6
    4 Descreva o papel de um roteador em uma rede • Um roteador envia dados para um destino específico em uma rede • Um roteador pode atribuir endereços IP • Um roteador pode conectar uma rede local à internet

    Fonte: Programa Cambridge International

    Placa de interface de rede (NIC)

    Uma placa de interface de rede 网络接口卡 (NIC) é o hardware que permite que um dispositivo se conecte a uma rede e envie e receba dados. Cada NIC tem um endereço MAC embutido.

    Endereço MAC e endereço IP

    • Um endereço MAC (media access control 介质访问控制 address) é um número que identifica um dispositivo físico. O fabricante o define, e normalmente ele não muda. Ele é escrito em hexadecimal.
    • Um endereço IP (internet protocol 网际协议 address) é um número que identifica um dispositivo em uma rede. Ele é atribuído pela rede e pode mudar.

    Assim, um endereço MAC permanece com o dispositivo, enquanto um endereço IP depende da rede que o dispositivo está usando.

    Existem duas versões de endereço IP. IPv4 é de 32 bits, escrito como quatro números decimais 0–255 (por exemplo 192.168.0.1); o mais novo IPv6 é de 128 bits, escrito como oito grupos de hexadecimais separados por dois-pontos, oferecendo imensamente mais endereços. Um endereço também pode ser estático 静态 (fixo, definido manualmente e nunca mudando) ou dinâmico 动态 (entregue pelo roteador/rede cada vez que o dispositivo se conecta, então pode mudar).

    Roteador

    Um roteador 路由器 conecta diferentes redes entre si — por exemplo, sua rede doméstica à internet. Ele lê o endereço IP em cada pacote e o encaminha para a rede correta.

    Um roteador Wi-Fi: hardware de rede encaminha pacotes entre dispositivos e a Internet mais ampla
    Um roteador Wi-Fi: hardware de rede encaminha pacotes entre dispositivos e a Internet mais ampla
    Explorar

    Laboratório de roteamento de rede

    Siga os dados de um dispositivo através do hardware de rede e protocolos.

    Vocabulário Treinar
    Inglês Chinês Pinyin
    router/ˈruːtə/ 路由器 lù yóu qì
    fetch-execute cycle/fetʃ ˈeksɪkjuːt ˈsaɪkl/ 取指执行周期 qǔ zhǐ zhí xíng zhōu qī
    media access control/ˈmiːdiːə ˈækses kənˈtrəʊl/ 介质访问控制 jiè zhì fǎng wèn kòng zhì
    internet protocol/ˈɪntənet ˈprəʊtəkɒl/ 网际协议 wǎng jì xié yì
    3.4

    Dicas de prova

    • Aprenda o ciclo busca-decodificação-execução e os registradores especiais: o program counter segura o endereço da próxima instrução, o MAR/MDR carregam o endereço/dado, e o accumulator segura o resultado da ALU.
    • O desempenho da CPU melhora com mais cores, um cache maior e uma clock speed mais alta.
    • RAM é volátil (perde seus dados sem energia) e guarda programas em uso; ROM é não volátil e apenas-leitura (as instruções de inicialização).
    • Combine os tipos de armazenamento secundário: magnético (HDD, fita), óptico (CD/DVD, lido por laser), estado sólido (SSD, USB, flash — sem partes móveis).
    • Um endereço MAC identifica o dispositivo físico e normalmente não muda; um endereço IP é dado pela rede e pode mudar.
    Vocabulário Treinar
    Inglês Chinês Pinyin
    central processing unit/ˈsentrəl ˈprəʊsesɪŋ ˈjuːnɪt/ 中央处理器 zhōng yāng chǔ lǐ qì
    instructions/ɪnˈstrʌkʃnz/ 指令 zhǐ lìng
    arithmetic logic unit/əˈrɪθmətɪk ˈlɒdʒɪk ˈjuːnɪt/ 算术逻辑单元 suàn shù luó jí dān yuán
    control unit/kənˈtrəʊl ˈjuːnɪt/ 控制单元 kòng zhì dān yuán
    registers/ˈredʒɪstəz/ 寄存器 jì cún qì
    buses/ˈbʌsɪz/ 总线 zǒng xiàn
    address bus/əˈdres bʌs/ 地址总线 dì zhǐ zǒng xiàn
    data bus/ˈdeɪtə bʌs/ 数据总线 shù jù zǒng xiàn
    control bus/kənˈtrəʊl bʌs/ 控制总线 kòng zhì zǒng xiàn
    program counter/ˈprəʊɡræm ˈkaʊntə/ 程序计数器 chéng xù jì shù qì
    memory address register/ˈmeməri əˈdres ˈredʒɪstə/ 内存地址寄存器 nèi cún dì zhǐ jì cún qì
    memory data register/ˈmeməri ˈdeɪtə ˈredʒɪstə/ 内存数据寄存器 nèi cún shù jù jì cún qì
    current instruction register/ˈkʌrənt ɪnˈstrʌkʃn ˈredʒɪstə/ 当前指令寄存器 dāng qián zhǐ lìng jì cún qì
    accumulator/əˈkjuːmjʊleɪtə/ 累加器 lěi jiā qì
    fetch–execute cycle/fetʃ ˈeksɪkjuːt ˈsaɪkl/ 取指执行周期 qǔ zhǐ zhí xíng zhōu qī
    clock speed/klɒk spiːd/ 时钟速度 shí zhōng sù dù
  • 4

    Software

    Assistir aula
    4.1

    Hardware e software

    Um sistema computacional é composto por duas partes que trabalham juntas.

    Hardware são as partes físicas (CPU, teclado); software são os programas (aplicativos, SO)
    Hardware são as partes físicas; software são os programas
    • Hardware 硬件 é as partes físicas 物理的 do computador — as partes que você pode tocar. Exemplos: a CPU, memória, teclado, tela e disco rígido.
    • Software 软件 são os programas 程序 que controlam o computador e dizem ao hardware o que fazer.

    O hardware não pode fazer nada útil sozinho. O software precisa de hardware para rodar. Ambos são necessários.

    Uma placa-mãe de computador com seus chips, slots e conectores
    A placa-mãe e as peças conectadas a ela são hardware — as partes físicas que você pode tocar
    Um sistema operacional desktop na tela
    Um sistema operacional é software — os programas que dizem ao hardware o que fazer
    Vocabulário Treinar
    Inglês Chinês Pinyin
    Hardware/ˈhɑːdweə/ 硬件 yìng jiàn
    physical/ˈfɪzɪkl/ 物理的 wù lǐ de
    Software/ˈsɒftweə/ 软件 ruǎn jiàn
    programs/ˈprəʊɡræmz/ 程序 chéng xù
    System software/ˈsɪstəm ˈsɒftweə/ 系统软件 xì tǒng ruǎn jiàn
    operating system/ˈɒpəreɪtɪŋ ˈsɪstəm/ 操作系统 cāo zuò xì tǒng
    4.1

    Tipos de software

    Programa
    Os candidatos devem ser capazes de: Notas e orientações
    1 Descreva a diferença entre software de sistema e software de aplicação e forneça exemplos de cada um • Software de sistema fornece os serviços de que o computador necessita, incluindo sistema operacional e software utilitário • Software de aplicação fornece os serviços de que o usuário necessita
    2 Descreva o papel e as funções básicas de um sistema operacional • Incluindo: – gerenciamento de arquivos – tratamento de interrupções – fornecimento de interface – gerenciamento de periféricos e drivers – gerenciamento de memória – gerenciamento de multitarefa – fornecimento de plataforma para execução de aplicativos – fornecimento de segurança do sistema – gerenciamento de contas de usuários
    3 Entenda como hardware, firmware e um sistema operacional são necessários para executar software de aplicação • Aplicativos são executados no sistema operacional • O sistema operacional é executado no firmware • O bootloader (firmware) é executado no hardware
    4 Descreva o papel e a operação de interrupções • Incluindo: – como uma interrupção é gerada – como ela é tratada usando uma rotina de serviço de interrupção – o que acontece como resultado das interrupções • Interrupções de software incluem divisão por zero e dois processos tentando acessar o mesmo local de memória • Interrupções de hardware incluem pressionar uma tecla no teclado e mover o mouse

    Fonte: Programa Cambridge International

    O software é dividido em dois tipos.

    Uma árvore dividindo Software em software de sistema (sistema operacional, utilitários, drivers, compilador) e software de aplicação (processador de texto, planilha, banco de dados, navegador)
    O software divide-se em software de sistema (faz o computador rodar) e software de aplicação (permite que o usuário realize uma tarefa)

    Software de sistema

    Software de sistema 系统软件 controla o próprio computador e fornece uma base para outros programas rodarem. Exemplos:

    • sistema operacional 操作系统 (veja abaixo);
    • compilador 编译器 e linker 链接器 (ferramentas que transformam programas em uma forma que o computador pode executar);
    • driver de dispositivo 设备驱动程序 — software que permite que o sistema operacional controle um pedaço de hardware;
    • software utilitário 实用程序 — ferramentas pequenas que cuidam do computador (por exemplo antivírus, backup, limpeza de disco).

    Abaixo do sistema operacional está o firmware 固件 – software armazenado permanentemente em ROM ou flash que roda no momento em que o computador é ligado. O BIOS e o bootloader 引导程序 são firmware: eles testam o hardware e depois carregam o sistema operacional. Assim, as camadas se empilham hardware → firmware → sistema operacional → software de aplicação, cada uma rodando na camada abaixo.

    Software de aplicação

    Software de aplicação 应用软件 permite que o usuário realize uma tarefa útil. Exemplos:

    • processamento de texto 文字处理 software (escrever documentos);
    • planilha 电子表格 software (trabalhar com números em uma grade);
    • sistema de gerenciamento de banco de dados 数据库管理系统 (armazenar e buscar dados);
    • navegador web 网页浏览器 (visualizar páginas da web).
    Software de sistema Software de aplicação
    Função executa e gerencia o computador ajuda o usuário a realizar uma tarefa
    Usado por o computador (ao fundo) o usuário (diretamente)
    Exemplos sistema operacional, drivers, utilitários processador de texto, navegador, jogos
    Vocabulário Treinar
    Inglês Chinês Pinyin
    linker/ˈlɪŋkə/ 链接器 liàn jiē qì
    device driver/dɪˈvaɪs ˈdraɪvə/ 设备驱动程序 shè bèi qū dòng chéng xù
    utility software/juːˈtɪlɪti ˈsɒftweə/ 实用程序 shí yòng chéng xù
    firmware/ˈfɜːmweə/ 固件 gù jiàn
    bootloader/ˈbuːtləʊdə/ 引导程序 yǐn dǎo chéng xù
    Application software/ˌæplɪˈkeɪʃn ˈsɒftweə/ 应用软件 yìng yòng ruǎn jiàn
    word processing/wɜːd ˈprəʊsesɪŋ/ 文字处理 wén zì chǔ lǐ
    spreadsheet/ˈspredʃiːt/ 电子表格 diàn zi biǎo gé
    database management system/ˈdeɪtəbeɪs ˈmænɪdʒmənt ˈsɪstəm/ 数据库管理系统 shù jù kù guǎn lǐ xì tǒng
    web browser/web ˈbraʊzə/ 网页浏览器 wǎng yè liú lǎn qì
    providing a user interface/prəˈvaɪdɪŋ ə ˈjuːzə ˈɪntəfeɪs/ 用户界面 yòng hù jiè miàn
    managing peripherals/ˈmænɪdʒɪŋ pəˈrɪfərəlz/ 外围设备 wài wéi shè bèi
    managing multitasking/ˈmænɪdʒɪŋ ˈmʌltitæskɪŋ/ 多任务处理 duō rèn wù chǔ lǐ
    providing a platform/prəˈvaɪdɪŋ ə ˈplætfɔːm/ 平台 píng tái
    4.1

    O sistema operacional

    Um sistema operacional (SO) é o principal software de sistema. Ele controla todo o computador e permite que o hardware, o software de aplicação e o usuário trabalhem juntos. Sem um SO, o computador é muito difícil de usar.

    Quatro camadas empilhadas — usuário no topo, depois software de aplicação, depois sistema operacional, depois hardware na base
    O sistema operacional fica entre o hardware e o software de aplicação e usuário, permitindo que trabalhem juntos

    O SO tem muitas funções:

    • gerenciando arquivos — salvar, abrir, nomear, mover e excluir arquivos;
    • lidando com interrupções (veja abaixo);
    • fornecendo uma interface do usuário 用户界面 para que o usuário controle o computador;
    • gerenciando memória — decidindo o que é mantido na RAM e onde;
    • gerenciando periféricos 外围设备和 seus drivers — controlando dispositivos como impressoras;
    • gerenciando multitarefa 多任务处理 — permitindo que vários programas rodem ao mesmo tempo;
    • fornecendo uma plataforma 平台 para executar software de aplicação;
    • gerenciando segurança — contas de usuários, senhas e direitos de acesso.
    4.1

    Interrupts

    Uma interrupção 中断 é um sinal enviado ao processador 处理器 para avisá-lo que algo precisa de atenção agora.

    Uma interrupção pode vir de três fontes:

    • hardware — por exemplo, uma tecla é pressionada, ou uma impressora acaba de papel;
    • software — por exemplo, um programa tenta dividir por zero;
    • o usuário — por exemplo, o usuário pressiona uma tecla "cancelar".

    Quando uma interrupção chega, o processador para o que está fazendo, salva seu local e atende (lida com) a interrupção. Quando isso estiver feito, ele volta ao que estava fazendo antes. Isso permite que o computador reaja rapidamente a eventos importantes.

    Um ciclo: programa principal rodando, depois em uma interrupção a CPU salva seu estado, executa a rotina de serviço de interrupção, restaura o estado e retoma
    Em uma interrupção a CPU salva seu local, executa a rotina de serviço de interrupção, depois restaura seu local e continua
    Explorar

    Como a CPU trata uma interrupção

    Passo a passo de uma interrupção. A CPU pausa o que está fazendo, lida com o evento urgente e continua exatamente onde parou — assim um único processador gerencia teclado, impressora e timer simultaneamente.

    Vocabulário Treinar
    Inglês Chinês Pinyin
    interrupt/ˈɪntərʌpt/ 中断 zhōng duàn
    processor/ˈprəʊsesə/ 处理器 chǔ lǐ qì
    central processing unit/ˈsentrəl ˈprəʊsesɪŋ ˈjuːnɪt/ 中央处理器 zhōng yāng chǔ lǐ qì
    programming language/ˈprəʊɡræmɪŋ ˈlæŋɡwɪdʒ/ 编程语言 biān chéng yǔ yán
    high-level language/haɪ ˈlevl ˈlæŋɡwɪdʒ/ 高级语言 gāo jí yǔ yán
    low-level language/ləʊ ˈlevl ˈlæŋɡwɪdʒ/ 低级语言 dī jí yǔ yán
    machine code/məˈʃiːn kəʊd/ 机器码 jī qì mǎ
    assembly language/əˈsemblɪ ˈlæŋɡwɪdʒ/ 汇编语言 huì biān yǔ yán
    specific/spəˈsɪfɪk/ 特定的 tè dìng de
    translator/trænˈsleɪtə/ 翻译程序 fān yì chéng xù
    4.2

    Linguagens de programação

    Programa
    Os candidatos devem ser capazes de: Notas e orientações
    1 Explique o que se entende por uma linguagem de alto nível e uma linguagem de baixo nível, incluindo as vantagens e desvantagens de cada uma • Vantagens e desvantagens incluem: – facilidade de leitura e escrita de código, ex.: baixo nível é difícil de ler – facilidade de depuração de código – independência de máquina – manipulação direta do hardware
    2 Entenda que a linguagem assembly é uma forma de linguagem de baixo nível que usa mnemônicos, e que um ensamblador é necessário para traduzir um programa em linguagem assembly em código de máquina
    3 Descreva a operação de um compilador e um intérprete, incluindo como o código de alto nível é traduzido por cada um e como os erros são relatados • Um compilador traduz todo o código de uma vez antes de executá-lo, produzindo um arquivo executável • Um intérprete traduz e executa o código linha por linha • Um compilador fornece um relatório de erros para todo o código se erros forem detectados • Um intérprete interrompe a execução quando um erro é encontrado
    4 Explique as vantagens e desvantagens de um compilador e um intérprete • Incluindo a compreensão de que um intérprete é usado principalmente durante o desenvolvimento de um programa e um compilador é usado para traduzir o programa final
    5 Explique o papel de um IDE na escrita de código de programas e as funções comuns que IDEs fornecem • Incluindo: – editores de código – ambiente de tempo de execução – tradutores – diagnósticos de erro – autocompletar – autocorrigir – formatação automática

    Fonte: Programa Cambridge International

    Todos os computadores processam dados usando a unidade central de processamento 中央处理器 (CPU). Para fazer a CPU realizar trabalho, pessoas escrevem programas em uma linguagem de programação 编程语言. Existem dois tipos.

    Linguagens de alto nível

    Uma linguagem de alto nível 高级语言 é escrita em palavras que se assemelham um pouco ao inglês (por exemplo Python). Ela é:

    • fácil para pessoas lerem, escreverem e corrigirem;
    • independente do computador — o mesmo programa pode rodar em diferentes tipos de computadores.

    Linguagens de baixo nível

    Uma linguagem de baixo nível 低级语言 está próxima do que o hardware realmente usa. Ela inclui:

    • código de máquina 机器码 — instruções escritas em binário (0s e 1s), que a CPU executa diretamente;
    • linguagem ensambladora 汇编语言 — código de máquina escrito com códigos de palavras curtas (mnemônicos) em vez de binário.

    Uma linguagem de baixo nível relaciona-se a um tipo de CPU específico 特定的, então um programa escrito para uma CPU pode não rodar em outra. É usada quando o programador precisa de controle total do hardware ou de código muito rápido e pequeno.

    Três camadas empilhadas: linguagem de alto nível no topo, depois assembly, depois código máquina na base
    Linguagens de alto nível estão próximas da linguagem humana e rodam em qualquer computador; linguagens de baixo nível (ensambladora e código de máquina) estão próximas do hardware e vinculadas a um único tipo de CPU
    Explorar

    Laboratório de conceitos de computação

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

    4.2

    Tradutores

    A CPU só pode executar código de máquina. Um programa de alto nível deve primeiro ser convertido em código de máquina. O software que faz isso é um tradutor 翻译程序. Existem três tipos: um compilador e um interpretador (para código de alto nível), e um ensamblador (para código de baixo nível).

    Compilador

    Um compilador traduz o todo programa em código de máquina antes de ser executado. Após a tradução, o código de máquina pode ser executado várias vezes sem precisar traduzir novamente.

    • a tradução ocorre uma única vez, em sua totalidade;
    • ele relata todos os erros juntos, no final da tradução;
    • o programa finalizado roda rápido e não precisa do compilador para funcionar.

    Interpretador

    Um interpretador 解释器 traduz e executa o programa linha por linha.

    • ele para no primeiro erro que encontra, o que ajuda durante os testes;
    • o programa roda mais devagar, pois é traduzido toda vez que é executado;
    • o interpretador deve estar presente toda vez que o programa for executado.
    Compilador Interpretador
    Traduz todo o programa de uma vez linha por linha
    Erros todos relatados no final para no primeiro erro
    Velocidade do programa final mais rápido mais lento
    Necessário para rodar depois? não sim

    Use um compilador quando quiser compartilhar um programa finalizado rápido. Use um interpretador quando estiver escrevendo e testando um programa e quiser encontrar erros facilmente.

    Montador

    Um ensamblador 汇编器 traduz um programa de linguagem ensambladora de baixo nível (escrito em mnemônicos como LDA, ADD) em código de máquina. Cada mnemônico torna-se uma instrução de máquina — uma tradução direta de um para um, diferentemente de um compilador ou interpretador, que trabalham com código de alto nível.

    Compilador traduzindo todo o programa uma vez em código de máquina que roda muitas vezes, versus um interpretador traduzindo e executando linha por linha
    Um compilador traduz todo o programa uma vez em código de máquina; um interpretador traduz e executa linha por linha

    Exemplo resolvido. Uma equipe está escrevendo um programa. Durante o desenvolvimento, eles querem encontrar e corrigir erros rapidamente; quando o lançarem, querem que os clientes o executem rápido sem ver o código-fonte. Qual tradutor se adequa a cada etapa? Durante o desenvolvimento, use um interpretador: ele traduz e executa linha por linha e para no primeiro erro, então um erro é fácil de localizar. Para lançar, use um compilador: ele traduz todo o programa uma vez em código de máquina, que então roda rapidamente sem tradutor presente, e o cliente recebe apenas o executável e não o código-fonte. Os dois não são rivais - nomeie a etapa e dê a razão, porque "um compilador é mais rápido" sozinho não rende pontos.

    Vocabulário Treinar
    Inglês Chinês Pinyin
    compiler/kəmˈpaɪlə/ 编译器 biān yì qì
    interpreter/ɪnˈtɜːprɪtə/ 解释器 jiě shì qì
    assembler/əˈsemblə/ 汇编器 huì biān qì
    integrated development environment/ˈɪntɪɡreɪtɪd dɪˈveləpmənt enˈvaɪrənmənt/ 集成开发环境 jí chéng kāi fā huán jìng
    code editor/kəʊd ˈedɪtə/ 代码编辑器 dài mǎ biān jí qì
    run time environment/rʌn taɪm enˈvaɪrənmənt/ 运行时环境 yùn xíng shí huán jìng
    error diagnostics/ˈerə ˌdaɪəɡˈnɒstɪks/ 错误诊断 cuò wù zhěn duàn
    auto-completion/ˈɔːtəʊ kəmˈpliːʃn/ 自动补全 zì dòng bǔ quán
    auto-correction/ˈɔːtəʊ kəˈrekʃn/ 自动纠错 zì dòng jiū cuò
    prettyprinting/ˈpretɪprɪntɪŋ/ 美化打印 měi huà dǎ yìn
    user interface/ˈjuːzə ˈɪntəfeɪs/ 用户界面 yòng hù jiè miàn
    peripherals/pəˈrɪfərəlz/ 外围设备 wài wéi shè bèi
    multitasking/ˈmʌltitæskɪŋ/ 多任务处理 duō rèn wù chǔ lǐ
    platform/ˈplætfɔːm/ 平台 píng tái
    4.2

    Ambiente de desenvolvimento integrado (IDE)

    Um ambiente de desenvolvimento integrado 集成开发环境 (IDE) é um software que ajuda você a escrever programas. Ele coloca muitas ferramentas úteis em um só lugar:

    • um editor de código 代码编辑器 — para digitar seu programa;
    • um ambiente de execução 运行时环境 — para executar o programa e testá-lo;
    • um tradutor — um compilador ou interpretador para converter seu código em código de máquina;
    • diagnóstico de erros 错误诊断 — mensagens que ajudam você a encontrar e entender erros;
    • autocompletar 自动补全 e autocorrigir 自动纠错 — o IDE completa ou corrige o código à medida que você digita;
    • formatagem estética 美化打印 — organizar o código de forma organizada com cores e recuos para facilitar a leitura.
    Código-fonte em um editor: um IDE combina editor, depurador e ferramentas de execução em um só lugar
    Código-fonte em um editor: um IDE combina editor, depurador e ferramentas de execução em um só lugar
    4.2

    Dicas de prova

    • Hardware é as partes físicas; software são os programas. Software de sistema roda o computador (SO, drivers, utilitários); software de aplicação executa uma tarefa para o usuário.
    • Um compilador traduz todo o programa de uma vez (o programa finalizado roda rápido, e todos os erros são relatados no final); um interpretador traduz linha por linha (ele para no primeiro erro, roda mais devagar e é necessário toda vez).
    • Linguagens de alto nível estão próximas do inglês e rodam em qualquer computador; linguagens de baixo nível (ensambladora, código de máquina) estão vinculadas a um único tipo de CPU.
    • Uma interrupção é um sinal que faz a CPU parar, salvar seu local, atender ao evento e depois continuar onde parou.
    • Aprenda os papéis do sistema operacional: gerenciamento de arquivos, memória, periféricos, multitarefa, segurança e interface do usuário.
  • 5

    A internet e seus usos

    Assistir aula
    5.1

    A internet e a World Wide Web

    Programa
    Os candidatos devem ser capazes de: Notas e orientações
    1 Entenda a diferença entre a internet e a World Wide Web • A internet é a infraestrutura • A World Wide Web é a coleção de sites e páginas web acessadas usando a internet
    2 Entenda o que se entende por um uniform resource locator (URL) • Um URL é um endereço baseado em texto para uma página web; pode conter o protocolo, o nome de domínio e o nome da página/arquivo web
    3 Descreva a finalidade e a operação do protocolo de transferência de hipertexto (HTTP) e do protocolo de transferência de hipertexto seguro (HTTPS)
    4 Explique a finalidade e as funções de um navegador web • A principal função de um navegador web é renderizar a marcação de hipertexto (HTML) e exibir páginas web • Funções incluem: – salvar marcadores e favoritos – registrar o histórico do usuário – permitir o uso de várias abas – armazenar cookies – fornecer ferramentas de navegação – fornecer uma barra de endereço
    5 Descreva como as páginas web são localizadas, recuperadas e exibidas em um dispositivo quando um usuário insere um URL • Incluindo o papel de: – o navegador web – endereços IP – o servidor de nomes de domínio (DNS) – o servidor web – HTML
    6 Explique o que se entende por cookies e como eles são usados, incluindo cookies de sessão e cookies persistentes • Cookies são usados para funções, incluindo: – salvar detalhes pessoais – rastrear preferências do usuário – manter itens em um carrinho de compras online – armazenar detalhes de login

    Fonte: Programa Cambridge International

    As pessoas frequentemente confundem esses dois termos, mas eles não são iguais.

    • A internet 互联网 é a infraestrutura 基础设施 — a enorme rede mundial de computadores e os cabos, roteadores e conexões que os unem.
    • A World Wide Web 万维网 (WWW) é uma coleção de sites 网站 e páginas da web que você visualiza usando a internet.

    Então a internet é a rede; a web é uma das coisas que você usa nessa rede.

    Um grande retângulo rotulado Internet contendo dois retângulos menores: a World Wide Web e outros serviços como e-mail
    A internet é a rede mundial; a World Wide Web é uma das coisas que você usa nela
    Um roteador preto em formato de caixa com três antenas altas saindo dele
    Um roteador conecta sua rede doméstica à internet e envia dados para o local correto
    Vocabulário Treinar
    Inglês Chinês Pinyin
    internet/ˈɪntənet/ 互联网 hù lián wǎng
    infrastructure/ˈɪnfrəstrʌktʃə/ 基础设施 jī chǔ shè shī
    world wide web/wɜːld waɪd web/ 万维网 wàn wéi wǎng
    websites/ˈwebsaɪts/ 网站 wǎng zhàn
    5.1

    URL

    Um uniform resource locator 统一资源定位符 (URL) é um endereço baseado em texto para uma página da web. Você o digita em um navegador web 网页浏览器 para visitar uma página, por exemplo https://www.example.com/index.html.

    O URL https://www.example.com/index.html dividido em três partes rotuladas: protocolo, nome de domínio e caminho
    Um URL tem três partes: o protocolo, o nome de domínio e o caminho para a página no servidor
    Vocabulário Treinar
    Inglês Chinês Pinyin
    uniform resource locator/ˈjuːnɪfɔːm rɪˈzɔːs ləʊˈkeɪtə/ 统一资源定位符 tǒng yī zī yuán dìng wèi fú
    web browser/web ˈbraʊzə/ 网页浏览器 wǎng yè liú lǎn qì
    rendering/ˈrendərɪŋ/ 渲染 xuàn rǎn
    hypertext markup language/ˈhaɪpətekst ˈmɑːkʌp ˈlæŋɡwɪdʒ/ 超文本标记语言 chāo wén běn biāo jì yǔ yán
    IP address/ˌaɪ ˈpiː əˈdres/ 网际协议地址 wǎng jì xié yì dì zhǐ
    domain name service/dəˈmeɪn neɪm ˈsɜːvɪs/ 域名服务 yù míng fú wù
    5.1

    O navegador web

    Um navegador web é o programa que você usa para visualizar páginas da web. Seu papel inclui:

    • renderizar 渲染 a linguagem de marcação de hipertexto 超文本标记语言 (HTML) — transformar o código da página no que você vê;
    • exibir páginas da web na tela;
    • gerenciar como uma página da web é apresentada — seu layout, texto e imagens.
    5.1

    Como uma página da web chega até você

    Quando você digita um URL e pressiona Enter, vários passos ocorrem:

    1. O navegador precisa do endereço IP 网际协议地址 do site, mas um URL usa um nome, não um número.
    2. O navegador pergunta a um serviço de nome de domínio 域名服务 (DNS) — um sistema que armazena o endereço IP para cada endereço web.
    3. O DNS encontra o endereço IP correspondente e o envia de volta ao navegador.
    4. O navegador usa o endereço IP para entrar em contato com o servidor web 网页服务器 que armazena a página.
    5. O servidor web envia o HTML da página de volta ao navegador.
    6. O navegador transforma o HTML na página e a exibe.

    O navegador solicitando ao servidor DNS um endereço IP, em seguida, requisitando a página ao servidor web e recebendo o HTML de volta *O navegador pede ao DNS o endereço IP do site, depois solicita a página do servidor web, que retorna o HTML

    Se o DNS não tiver o endereço, ele pergunta a outro servidor DNS até que o endereço seja encontrado.

    Longas fileiras de servidores de computador em racks metálicos, iluminados com luzes azuis, dentro de um data center
    Um centro de dados cheio de servidores: computadores poderosos que armazenam sites e os enviam para você

    Exemplo resolvido. Decomponha o URL https://www.example.com/books/index.html. https é o protocolo, o conjunto de regras usado para transferir a página (o s significa que a transferência está criptografada). www.example.com é o nome de domínio, que identifica o servidor web e que um servidor DNS converte em um endereço IP. /books/index.html é o caminho do arquivo e nome do arquivo do recurso armazenado naquele servidor. Nomeie cada parte junto com seu papel: uma resposta que diz "a primeira parte" e "a última parte" descreve o URL sem nunca explicá-lo.

    Explorar

    O que acontece ao carregar uma página web

    Passo a passo. O endereço web é apenas um nome — o DNS o converte em um endereço IP antes do navegador pedir a página ao servidor certo.

    5.1

    Cookies

    Um cookie é um pequeno arquivo de texto que um site armazena no seu dispositivo. Ele permite que o site lembre coisas sobre você. Existem dois tipos.

    Um cookie é um pequeno arquivo de texto, armazenado no seu computador, que lembra suas configurações ou login
    Um cookie é um pequeno arquivo de texto armazenado no seu computador
    Tipo Mantido ao fechar o navegador? Usado para
    cookie de sessão 会话 não — excluído ao fechar o navegador dados de curto prazo, p.ex., itens em uma cesta de compras
    cookie persistente 持久 sim — salvo no dispositivo lembrar de você entre visitas

    Cookies são usados para:

    • salvar detalhes pessoais para que você não precise digitá-los novamente (como login ou endereço);
    • rastrear preferências do usuário 用户偏好, como seu idioma ou coisas que você gosta, para que o site possa sugerir conteúdo.
    Vocabulário Treinar
    Inglês Chinês Pinyin
    persistent/pəˈsɪstənt/ 持久 chí jiǔ
    user preferences/ˈjuːzə ˈprefrənsɪz/ 用户偏好 yòng hù piān hǎo
    digital currency/ˈdɪdʒɪtl ˈkʌrənsi/ 数字货币 shù zì huò bì
    electronic form/ɪlekˈtrɒnɪk fɔːm/ 电子形式 diàn zi xíng shì
    5.2

    Moeda digital

    Programa
    Os candidatos devem ser capazes de: Notas e orientações
    1 Entenda o conceito de moeda digital e como as moedas digitais são usadas • Uma moeda digital é aquela que existe apenas eletronicamente
    2 Entenda o processo de blockchain e como ele é usado para rastrear transações de moeda digital • Blockchain, em sua forma básica, é um livro-razão digital, ou seja, uma série cronologicamente ordenada de registros que não podem ser alterados

    Fonte: Programa Cambridge International

    Uma moeda digital 数字货币 é dinheiro que existe apenas em forma eletrônica 电子形式. Não há moedas ou notas. É armazenado e movido entre pessoas usando computadores, e pode ser usado para pagar coisas online.

    Um problema com o dinheiro digital é a confiança: como evitar que alguém gaste o mesmo dinheiro duas vezes, ou altere os registros? Blockchain resolve isso.

    5.2

    Blockchain

    Uma blockchain 区块链 é um digital ledger 数字账本 — um registro compartilhado de todas as transactions 交易. O registro é copiado em muitos computadores, de modo que nenhuma pessoa única o controla e é muito difícil alterá-lo.

    As transações são mantidas em blocos conectados em uma cadeia. Cada bloco contém:

    • os dados da transação (quem pagou a quem e quanto);
    • um timestamp 时间戳 (data e hora);
    • um hash value 哈希值 — um código especial calculado a partir do conteúdo do bloco.

    Cada bloco também armazena o hash do bloco anterior. Se alguém alterar um bloco antigo, seu hash muda, deixando de corresponder ao próximo bloco. Isso quebra a cadeia e a alteração é detectada imediatamente. É assim que a blockchain rastreia transações com segurança.

    Três blocos em uma cadeia, cada um contendo dados, um timestamp e um hash, com cada bloco também armazenando o hash do bloco anterior
    Cada bloco armazena o hash do bloco anterior, encadeando os blocos; alterar um bloco quebra a cadeia
    Explorar

    Hashing por trás de um blockchain

    Um hash é unidirecional e uma pequena mudança na entrada inverte muito da saída — um blockchain encadeia esses hashes para que qualquer adulteração seja óbvia.

    Vocabulário Treinar
    Inglês Chinês Pinyin
    blockchain/ˈblɒktʃeɪn/ 区块链 qū kuài liàn
    digital ledger/ˈdɪdʒɪtl ˈledʒə/ 数字账本 shù zì zhàng běn
    transaction/trænˈsækʃn/ 交易 jiāo yì
    timestamp/ˈtaɪmstæmp/ 时间戳 shí jiān chuō
    hash value/hæʃ ˈvæljuː/ 哈希值 hā xī zhí
    5.3

    Ameaças à cibersegurança

    Programa
    Os candidatos devem ser capazes de: Notas e orientações
    1 Descreva os processos envolvidos e o objetivo de realizar uma gama de ameaças à segurança cibernética • Incluindo: – ataque de força bruta – interceptação de dados – ataque de negação de serviço distribuído (DDoS) – hacking – malware (vírus, worm, cavalo de troia, spyware, adware, ransomware) – pharming – phishing – engenharia social
    2 Explique como uma gama de soluções são usadas para ajudar a manter os dados seguros contra ameaças de segurança • Incluindo: – níveis de acesso – anti-malware, incluindo antivírus e anti-spyware – autenticação (nome de usuário e senha, biometria, verificação em duas etapas) – automatização de atualizações de software – verificação da ortografia e tom das comunicações – verificação do URL anexado a um link – firewalls – configurações de privacidade – servidores proxy – protocolo de segurança de camada de sockets seguros (SSL)

    Fonte: Programa Cambridge International

    Segurança cibernética 网络安全 significa manter computadores, redes e dados seguros contra ataques. Você deve conhecer essas ameaças.

    Threat What it is
    brute force attack 暴力破解 tentar muitas senhas rapidamente até encontrar a correta
    data interception 数据拦截 "espiar" para roubar dados enquanto viajam por uma rede
    distributed denial of service 分布式拒绝服务 (DDoS) attack inundar um servidor com tantas solicitações que ele não consegue responder, fazendo o site cair
    hacking 黑客攻击 obter acesso a um sistema de computador sem permissão
    malware 恶意软件 software nocivo (veja a tabela abaixo)
    pharming 域名欺骗 um código secreto te redireciona para um site falso mesmo quando digita o endereço correto
    phishing 网络钓鱼 e-mails ou mensagens falsas que enganam você para revelar detalhes privados
    social engineering 社会工程 enganar uma pessoa (não um computador) para violar a segurança, p.ex., fingindo ser o chefe

    Tipos de malware

    Malware é qualquer software feito para prejudicar um computador. Os principais tipos são:

    Malware O que faz
    virus 病毒 anexa-se a um arquivo e copia-se quando o arquivo é aberto; pode excluir ou danificar dados
    worm 蠕虫 copia-se pela rede sozinho, sem precisar que um arquivo seja aberto
    Trojan horse 特洛伊木马 finge ser um software útil, mas prejudica o computador após ser instalado
    spyware 间谍软件 registra secretamente o que você faz, como as teclas pressionadas
    adware 广告软件 inunda você com anúncios indesejados
    ransomware 勒索软件 bloqueia seus arquivos e exige pagamento para desbloqueá-los

    Impacto das ameaças

    Esses ataques podem roubar dados pessoais, excluir ou alterar arquivos, impedir que um serviço funcione, custar dinheiro e fazer usuários perderem a confiança em uma empresa. Por exemplo, um ataque DDoS pode tornar uma loja online inutilizável, causando perda de vendas.

    Um cadeado: a cibersegurança protege dados e sistemas contra malware, phishing e acesso não autorizado
    Um cadeado: a cibersegurança protege dados e sistemas contra malware, phishing e acesso não autorizado
    Vocabulário Treinar
    Inglês Chinês Pinyin
    cyber security/ˈsaɪbə sɪˈkjʊərɪti/ 网络安全 wǎng luò ān quán
    brute force attack/bruːt fɔːs əˈtæk/ 暴力破解 bào lì pò jiě
    data interception/ˈdeɪtə ˌɪntəˈsepʃn/ 数据拦截 shù jù lán jié
    distributed denial of service/ˈdɪstrɪbjuːtɪd dɪˈnaɪəl ɒv ˈsɜːvɪs/ 分布式拒绝服务 fēn bù shì jù jué fú wù
    hacking/ˈhækɪŋ/ 黑客攻击 hēi kè gōng jī
    malware/ˈmælweə/ 恶意软件 è yì ruǎn jiàn
    pharming/ˈfɑːmɪŋ/ 域名欺骗 yù míng qī piàn
    phishing/ˈfɪʃɪŋ/ 网络钓鱼 wǎng luò diào yú
    social engineering/ˈsəʊʃl ˌendʒɪˈnɪərɪŋ/ 社会工程 shè huì gōng chéng
    virus/ˈvaɪrəs/ 病毒 bìng dú
    worm/wɜːm/ 蠕虫 rú chóng
    Trojan horse/ˈtrəʊdʒn hɔːs/ 特洛伊木马 tè luò yī mù mǎ
    spyware/ˈspaɪweə/ 间谍软件 jiàn dié ruǎn jiàn
    adware/ˈædweə/ 广告软件 guǎng gào ruǎn jiàn
    ransomware/ˈrænsəmweə/ 勒索软件 lè suǒ ruǎn jiàn
    5.3

    Protegendo os dados

    Você pode proteger dados usando estes métodos.

    • access levels 访问权限 — cada usuário só pode ver ou alterar os dados que precisa, nada mais.
    • anti-malware 反恶意软件 software, incluindo anti-virus 杀毒软件 e anti-spyware 反间谍软件 — verifica e remove software nocivo.
    • authentication 身份验证 — provar quem você é antes de ter acesso. Métodos incluem:
      • biometrics 生物识别 (impressão digital ou rosto),
      • uma senha 密码,
      • two-step verification 两步验证 (um código enviado ao seu celular além da senha).
    • automating software updates — atualizações corrigem pontos fracos (bugs) no software automaticamente.
    • checking the spelling and tone of messages — ortografia ruim ou tom estranho/urgente pode indicar que uma mensagem é falsa (phishing).
    • checking the URL attached to a link — um endereço web errado ou estranho avisa que o link é inseguro.
    • firewall 防火墙 — verifica dados entrando e saindo de uma rede e bloqueia anything not allowed.
    • privacy settings 隐私设置 — controlam quem pode ver suas informações online.
    Um firewall entre a internet e uma rede privada, permitindo uma conexão autorizada e bloqueando outra
    Um firewall fica entre a internet externa e sua rede, verificando cada conexão e bloqueando qualquer tráfego não autorizado
    • proxy server 代理服务器 — fica entre o usuário e a internet, ocultando o IP do usuário e filtrando conteúdo inseguro.
    Explorar

    Criptografia com uma chave

    Mude o deslocamento — essa é a chave. Cada letra desliza esse tanto de posições para criar texto cifrado, e a mesma chave o devolve. Essa é criptografia simétrica.

    Vocabulário Treinar
    Inglês Chinês Pinyin
    access levels/ˈækses ˈlevlz/ 访问权限 fǎng wèn quán xiàn
    anti-malware/ˈænti ˈmælweə/ 反恶意软件 fǎn è yì ruǎn jiàn
    anti-virus/ˈænti ˈvaɪrəs/ 杀毒软件 shā dú ruǎn jiàn
    anti-spyware/ˈænti ˈspaɪweə/ 反间谍软件 fǎn jiàn dié ruǎn jiàn
    authentication/ɔːˌθentɪˈkeɪʃn/ 身份验证 shēn fèn yàn zhèng
    biometrics/ˌbaɪəʊˈmetrɪks/ 生物识别 shēng wù shí bié
    password/ˈpæswɜːd/ 密码 mì mǎ
    two-step verification/tuː step ˌverɪfɪˈkeɪʃn/ 两步验证 liǎng bù yàn zhèng
    firewall/ˈfaɪəwɔːl/ 防火墙 fáng huǒ qiáng
    privacy settings/ˈprɪvəsi ˈsetɪŋz/ 隐私设置 yǐn sī shè zhì
    proxy server/ˈprɒksi ˈsɜːvə/ 代理服务器 dài lǐ fú wù qì
    5.3

    Dicas de prova

    • A internet é a rede mundial (a infraestrutura); a world wide web são as páginas que você visualiza nela — não confunda as duas.
    • Aprenda como uma página carrega: o navegador pede o IP do site a um DNS, depois solicita a página ao web server, que devolve o HTML.
    • Combine os tipos de malware: virus (se anexa a um arquivo), worm (se espalha sozinho pela rede), Trojan horse (finge ser útil), spyware, ransomware.
    • Combine cada ameaça com uma defesa: phishing/pharming → verificar a URL; brute force → senhas fortes + two-step verification; interception → criptografia; hacking/DDoS → um firewall.
    • Um cookie session é excluído quando você fecha o navegador; um cookie persistent é salvo para lembrá-lo entre visitas.
    Vocabulário Treinar
    Inglês Chinês Pinyin
    web server/web ˈsɜːvə/ 网页服务器 wǎng yè fú wù qì
    session/ˈseʃn/ 会话 huì huà
  • 6

    Tecnologias automatizadas e emergentes

    Assistir aula
    6.1

    Sistemas automatizados

    Programa
    Os candidatos devem ser capazes de: Notas e orientações
    1 Descreva como sensores, microprocessadores e atuadores podem ser usados em colaboração para criar sistemas automatizados
    2 Descreva as vantagens e desvantagens de um sistema automatizado usado para um cenário dado • Incluindo cenários de: – indústria – transporte – agricultura – clima – jogos – iluminação – ciência

    Fonte: Programa Cambridge International

    Um automated system 自动化系统是软件和硬件的混合体,能够感知并响应其环境 环境中的数据,无需human intervention 人工干预。换句话说,它自行工作。

    Exemplos de sistemas automatizados:

    • um sistema de aquecimento central 中央供暖;
    • um processo químico 化学过程 em uma fábrica;
    • uma greenhouse 温室 (para cultivar plantas);
    • uma barreira de estacionamento 停车场道闸.

    Sensores, microprocessadores e atuadores

    Três partes funcionam juntas em um sistema automatizado.

    Parte Função
    sensor 传感器 mede uma quantidade física (como temperatura ou luz) e envia os dados
    microprocessor 微处理器 compara os dados com valores armazenados e toma decisões
    actuator 执行器 recebe um sinal e causa movimento ou ação (como abrir uma válvula)

    O ciclo funciona assim:

    1. O sensor envia dados ao microprocessador.
    2. O microprocessador compara esses dados com stored values 存储值 e toma uma decisão.
    3. O microprocessador envia sinais aos atuadores para tomar medidas.

    Por exemplo, em uma estufa: um sensor de temperatura lê o calor; o microprocessador compara com o valor desejado; se estiver muito quente, o microprocessador sinaliza um atuador para abrir uma janela.

    Um loop: um sensor de temperatura alimenta o microprocessador, que sinaliza um atuador para abrir uma janela, resfriando a estufa, que o sensor mede novamente
    Um sensor alimenta o microprocessador, que compara a leitura com um valor armazenado e sinaliza um atuador; o loop então se repete

    O programa escolar cita vários sensor types 传感器类型, cada um lendo uma quantidade física específica — por exemplo, um accelerometer 加速度计 (movimento ou inclinação), um sensor de humidity 湿度 (umidade no ar) e um sensor de proximity 接近 (um objeto próximo):

    Sensor Measures Typical use
    temperatura calor fornos, estufas, aquecimento
    luz brightness luzes automáticas, câmeras
    pressão force on a surface tapetes de alarme, touchscreens
    infra-red / proximity a nearby object portas automáticas, sensores de estacionamento
    acoustic (sound) sound level monitores de ruído
    humidity / moisture water in air or soil estufas, irrigação
    gás a gas being present alarmes de fumaça e CO
    pH acidez piscinas, aquários
    accelerometer movement or tilt telefones, acionamento de airbags
    magnetic field magnetism contato de portas, bússolas
    flow / level fluid flow or depth tubulações, tanques

    Para escolher um sensor para um cenário, selecione aquele que lê a right physical quantity: um aquário precisa de sensores de pH e temperatura; uma porta automática precisa de um sensor infra-vermelho / de proximidade.

    Vantagens e desvantagens

    Sistemas automatizados são usados em muitas situações, como indústria, transporte, agricultura 农业 (agricultura), clima (coleta de dados), jogos e iluminação.

    As vantagens dos sistemas automatizados, como funcionamento 24/7 e consistência, contrapostas às desvantagens, como alto custo de configuração e perda de empregos
    As vantagens e desvantagens dos sistemas automatizados
    Um drone branco de quatro rotores com uma pequena câmera, voando no céu acima do mar
    Um drone de câmera: pode voar sozinho ao longo de uma rota definida para coletar dados
    Vantagens Desvantagens
    trabalha o dia todo e a noite toda, sem descanso custa muito para comprar e configurar
    mais rápido e mais consistente consistentes do que pessoas pode falhar e precisar de reparo especializado
    pode trabalhar em lugares inseguros para pessoas pode substituir empregos das pessoas
    menos erros humanos não pode reagir facilmente a uma situação para a qual não foi construído

    Exemplo resolvido. Descreva como uma estufa automática mantém a temperatura em 25 °C. Um sensor de temperatura mede continuamente a temperatura e envia sua leitura, convertida para digital por um conversor analógico-digital (ADC), ao microprocessador. O microprocessador compara a leitura com o valor armazenado de 25 °C. Se a temperatura estiver acima dele, o microprocessador sinaliza a um atuador para abrir uma janela ou ligar um ventilador; se estiver abaixo, ele liga um aquecedor. Todo o ciclo então se repete continuamente. Duas marks quase sempre estão nas palavras "compares with a stored (pre-set) value" e "the process repeats" - a descrição que para em "o sensor diz ao computador" as deixa para trás.

    Explorar

    Um laço de controle automatizado

    Gire ao redor do laço. Um sistema automatizado sente, compara contra um alvo, então age — e como a ação muda o que ele sente, ele continua se corrigindo sem necessidade humana.

    Vocabulário Treinar
    Inglês Chinês Pinyin
    automated system/ˈɔːtəmeɪtɪd ˈsɪstəm/ 自动化系统 zì dòng huà xì tǒng
    environment/enˈvaɪrənmənt/ 环境 huán jìng
    human intervention/ˈhjuːmən ˌɪntəˈvenʃn/ 人工干预 rén gōng gān yù
    greenhouse/ˈɡriːnhaʊs/ 温室 wēn shì
    car park barrier/kɑː pɑːk ˈbærɪə/ 停车场道闸 tíng chē chǎng dào zhá
    sensor/ˈsensə/ 传感器 chuán gǎn qì
    microprocessor/ˌmaɪkrəʊˈprəʊsesə/ 微处理器 wēi chǔ lǐ qì
    actuator/ˈæktʃuːeɪtə/ 执行器 zhí xíng qì
    stored values/stɔːd ˈvæljuːz/ 存储值 cún chǔ zhí
    sensor types/ˈsensə taɪps/ 传感器类型 chuán gǎn qì lèi xíng
    accelerometer/əkˌseləˈrɒmɪtə/ 加速度计 jiā sù dù jì
    humidity/hjuːˈmɪdɪti/ 湿度 shī dù
    proximity/prɒkˈsɪmɪti/ 接近 jiē jìn
    consistent/kənˈsɪstənt/ 一致的 yí zhì de
    Robotics/rəʊˈbɒtɪks/ 机器人技术 jī qì rén jì shù
    robots/ˈrəʊbɒts/ 机器人 jī qì rén
    physical structure/ˈfɪzɪkl ˈstrʌktʃə/ 物理结构 wù lǐ jié gòu
    electrical components/ɪˈlektrɪkl kəmˈpəʊnənts/ 电子元件 diàn zi yuán jiàn
    programmable instructions/ˈprəʊɡrəməbl ɪnˈstrʌkʃnz/ 可编程指令 kě biān chéng zhǐ lìng
    factory equipment/ˈfæktəri ɪˈkwɪpmənt/ 工厂设备 gōng chǎng shè bèi
    domestic appliances/dəˈmestɪk əˈplaɪənsɪz/ 家用电器 jiā yòng diàn qì
    6.2

    Robótica

    Programa
    Os candidatos devem ser capazes de: Notas e orientações
    1 Entenda o que se entende por robótica • Robótica é um ramo da ciência da computação que incorpora o projeto, construção e operação de robôs • Exemplos incluem equipamentos de fábrica, robôs domésticos e drones
    2 Descreva as características de um robô • Incluindo: – uma estrutura mecânica ou estrutura – componentes elétricos, como sensores, microprocessadores e atuadores – programável
    3 Entenda os papéis que os robôs podem desempenhar e descreva as vantagens e desvantagens de seu uso • Robôs podem ser usados em áreas incluindo: – indústria – transporte – agricultura – medicina – ambientes domésticos – entretenimento

    Fonte: Programa Cambridge International

    Robótica 机器人技术 é o ramo da tecnologia que trata do projeto, construção e operação de robôs 机器人.

    Um robô tem estas características:

    • uma estrutura física 物理结构 (um corpo mecânico 机械的, como braços);
    • componentes elétricos 电子元件 (motores, sensores e fiação);
    • instruções programáveis 可编程指令 — ele segue um programa que pode ser alterado.

    O que os robôs fazem

    Os robôs podem desempenhar muitos papéis, por exemplo:

    • equipamentos de fábrica 工厂设备 — construir carros, soldar, mover peças pesadas;
    • eletrodomésticos 家用电器 — como um aspirador de pó robótico vacuum cleaner 吸尘器.
    Um braço robótico branco em uma linha de produção de fábrica, com cabos e estrutura metálica ao redor
    Um braço robótico industrial. Segue um programa e pode ser reprogramado para fazer um novo trabalho.
    Um aspirador de pó robótico redondo, plano e cinza visto de cima, com botões S, M e L no topo
    Um aspirador de pó robô: um robô doméstico que se move sozinho para limpar o chão
    Vantagens Desvantagens
    faz trabalhos monótonos ou perigosos caro para comprar e manter
    trabalha rápido e com precisão pode substituir trabalhadores humanos
    não cansa nem se entedia um robô tem uma falta de tomada de decisão independente 缺乏独立决策 — ele só faz o que foi programado para fazer

    Uma limitação chave de um robô é que ele não pode pensar por si mesmo. Ele não pode tomar suas próprias escolhas quando algo inesperado acontece.

    Explorar

    Laboratório de conceitos de computação

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

    Vocabulário Treinar
    Inglês Chinês Pinyin
    vacuum cleaner/ˈvækjuːm ˈkliːnə/ 吸尘器 xī chén qì
    lack of independent decision-making/læk ɒv ˌɪndɪˈpendənt dɪˈsɪʒn ˈmeɪkɪŋ/ 缺乏独立决策 quē fá dú lì jué cè
    Artificial intelligence/ˌɑːtɪˈfɪʃl ɪnˈtelɪdʒəns/ 人工智能 rén gōng zhì néng
    simulation/ˌsɪmjʊˈleɪʃn/ 模拟 mó nǐ
    rules/ruːlz/ 规则 guī zé
    reason/ˈriːzn/ 推理 tuī lǐ
    draw conclusions/drɔː kənˈkluːʒnz/ 得出结论 dé chū jié lùn
    approximate/əˈprɒksɪmət/ 近似的 jìn sì de
    definite/ˈdefɪnət/ 确定的 què dìng de
    learn/lɜːn/ 学习 xué xí
    6.3

    Inteligência artificial

    Programa
    Os candidatos devem ser capazes de: Notas e orientações
    1 Entenda o que se entende por inteligência artificial (IA) • IA é um ramo da ciência da computação que trata da simulação de comportamentos inteligentes por computadores
    2 Descreva as principais características da IA como a coleta de dados e as regras para usar esses dados, a capacidade de raciocinar, e pode incluir a capacidade de aprender e adaptar-se
    3 Explique a operação básica e os componentes dos sistemas de IA para simular comportamento inteligente • Limitado a: – sistemas especialistas – aprendizado de máquina • Sistemas especialistas têm uma base de conhecimento, uma base de regras, um motor de inferência e uma interface • Aprendizado de máquina é quando um programa tem a capacidade de adaptar automaticamente seus próprios processos e/ou dados

    Fonte: Programa Cambridge International

    Inteligência artificial 人工智能 (IA) é a simulação 模拟 da inteligência humana por sistemas computacionais. Isso significa um computador realizando tarefas que normalmente exigem pensamento humano.

    Características da IA

    Sistemas de IA geralmente têm estes recursos:

    • eles coletam dados e as regras 规则 para usar esses dados;
    • eles têm a capacidade de raciocinar 推理 (resolver problemas usando as regras);
    • eles têm a capacidade de tirar conclusões 得出结论, que podem ser aproximadas 近似的 (uma melhor aposta) ou definitivas 确定的 (certas);
    • eles têm a capacidade de aprender 学习 a partir dos dados;
    • eles têm a capacidade de se adaptar 适应 — de alterar seu comportamento à medida que recebem novos dados.
    Um sistema de IA como um loop: coleta dados, aplica regras e identifica padrões, age sobre uma decisão, depois aprende e melhora com o resultado antes de coletar mais dados
    Um sistema de IA coleta dados, aplica regras, age, depois aprende e melhora

    Exemplos de IA

    • sistemas especialistas 专家系统 — software que dá conselhos como um especialista humano (por exemplo, ajudando um médico com um diagnóstico);
    • processamento de linguagem natural 自然语言处理 — compreender fala ou texto humano;
    • carros autônomos 自动驾驶汽车.
    Um pequeno carro autônomo branco em uma estrada, com um sensor giratório em seu teto
    Um carro autônomo: sensores no veículo permitem que um computador o pilote sem condutor

    Dentro de um sistema especialista

    Um sistema especialista armazena a experiência humana e raciocina a partir dela. Ele tem quatro partes:

    • uma base de conhecimento 知识库 – os fatos armazenados sobre o assunto;
    • uma base de regras 规则库 – as regras "se... então..." que um especialista humano aplicaria;
    • um motor de inferência 推理引擎 – aplica as regras aos fatos para chegar a uma conclusão;
    • uma interface do usuário 用户界面 – faz perguntas ao usuário e mostra o resultado.

    A interface coleta fatos do usuário; o motor de inferência executa a base de regras contra a base de conhecimento; e o sistema emite um diagnóstico ou uma probabilidade – usado para ajudar um médico a diagnosticar uma doença ou encontrar uma falha em um carro.

    Aprendizado de máquina

    Aprendizado de máquina 机器学习 é um programa que melhora seu próprio desempenho através de experiência, sem ser explicitamente reprogramado. Ele encontra padrões nos dados e se adapta: um mecanismo de busca fica melhor em classificar resultados, um assistente de voz reconhece comandos falados com mais precisão, e um aspirador de pó robótico gradualmente aprende o layout de um quarto.

    IA restrita, geral e forte

    Três degraus ascendentes: IA restrita (toda IA atual), IA geral e IA forte, com IA geral e IA forte rotuladas como ainda não existindo
    IA restrita faz uma tarefa (toda IA atual); IA geral poderia fazer qualquer tarefa humana; IA forte seria autoconsciente — nenhuma delas existe ainda
    Tipo O que significa
    IA restrita 弱人工智能 pode fazer apenas uma tarefa ou um pequeno conjunto de tarefas (por exemplo, um programa de xadrez). Toda IA atual é IA restrita.
    IA geral 通用人工智能 poderia fazer qualquer tarefa que um humano possa fazer, alternando entre muitas tarefas diferentes.
    IA forte 强人工智能 pensaria e seria consciente como uma mente humana real. Isso ainda não existe.
    Explorar

    Laboratório de conceitos de computação

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

    Vocabulário Treinar
    Inglês Chinês Pinyin
    adapt/əˈdæpt/ 适应 shì yìng
    expert systems/ˈekspɜːt ˈsɪstəmz/ 专家系统 zhuān jiā xì tǒng
    natural language processing/ˈnætʃərəl ˈlæŋɡwɪdʒ ˈprəʊsesɪŋ/ 自然语言处理 zì rán yǔ yán chǔ lǐ
    self-driving cars/self ˈdraɪvɪŋ kɑːz/ 自动驾驶汽车 zì dòng jià shǐ qì chē
    knowledge base/ˈnɒlɪdʒ beɪs/ 知识库 zhī shí kù
    rule base/ruːl beɪs/ 规则库 guī zé kù
    inference engine/ˈɪnfərəns ˈendʒɪn/ 推理引擎 tuī lǐ yǐn qíng
    user interface/ˈjuːzə ˈɪntəfeɪs/ 用户界面 yòng hù jiè miàn
    Machine learning/məˈʃiːn ˈlɜːnɪŋ/ 机器学习 jī qì xué xí
    narrow AI/ˈnærəʊ ˌeɪ ˈaɪ/ 弱人工智能 ruò rén gōng zhì néng
    general AI/ˈdʒenərəl ˌeɪ ˈaɪ/ 通用人工智能 tōng yòng rén gōng zhì néng
    strong AI/strɒŋ ˌeɪ ˈaɪ/ 强人工智能 qiǎng rén gōng zhì néng
    central heating/ˈsentrəl ˈhiːtɪŋ/ 中央供暖 zhōng yāng gōng nuǎn
    chemical process/ˈkemɪkl ˈprəʊses/ 化学过程 huà xué guò chéng
    agriculture/ˈæɡrɪkʌltʃə/ 农业 nóng yè
    mechanical/mɪˈkænɪkl/ 机械的 jī xiè de
    6.3

    Dicas de prova

    • Aprenda o ciclo de controle: um sensor mede uma quantidade → o microprocessador compara com um valor armazenado → um atuador toma ação; então o ciclo se repete.
    • Não confunda as partes: um sensor envia dados para dentro; um atuador causa movimento para fora.
    • Um robô segue instruções programáveis e não pode tomar suas próprias decisões quando algo inesperado acontece.
    • IA simula o pensamento humano: coleta dados e regras, raciocina, tira conclusões e pode aprender e se adaptar.
    • Conheça os níveis de IA: restrita (uma tarefa; toda IA atual), geral (qualquer tarefa humana), forte (autoconsciente; não existe ainda).
  • 7

    Projeto de algoritmos e resolução de problemas

    Assistir aula
    Programa
    Os candidatos devem ser capazes de: Notas e orientações
    1 Entenda o ciclo de vida do desenvolvimento de programas, limitado a: análise, projeto, codificação e testes • Incluindo identificar cada etapa e realizar essas tarefas para cada etapa: – análise: abstração, decomposição do problema, identificação do problema e requisitos – projeto: decomposição, diagramas de estrutura, fluxogramas, pseudocódigo – codificação: escrita de código de programa e testes iterativos – testes: teste de código de programa com o uso de dados de teste
    2 (a) Entenda que todo sistema computacional é composto por sub-sistemas, que são compostos por outros sub-sistemas (b) Entenda como um problema pode ser decomposto em suas partes componentes • Incluindo: – entradas – processos – saídas – armazenamento
    (c) Use diferentes métodos para projetar e construir uma solução para um problema • Incluindo: – diagramas de estrutura – fluxogramas – pseudocódigo
    3 Explique a finalidade de um algoritmo dado • Incluindo: – stating the purpose of an algorithm – describing the processes involved in an algorithm
    4 Entenda métodos padrão de solução • Limitado a: – busca linear – ordenação bolha – totalização – contagem – encontrar valores máximo, mínimo e médio
    5 (a) Entenda a necessidade de verificações de validação serem feitas nos dados de entrada e os diferentes tipos de verificação de validação • Incluindo: – verificação de intervalo – verificação de comprimento – verificação de tipo – verificação de presença – verificação de formato – dígito verificador
    (b) Compreender a necessidade de checks de verificação nos dados de entrada e os diferentes tipos de checks de verificação • Incluindo: – check visual – check de entrada dupla
    6 Sugerir e aplicar dados de teste adequados • Limitado a: – normal – anormal – extremo – limite • Dados extremos são o maior/menor valor aceitável • Dados de limite são o maior/menor valor aceitável e o correspondente menor/maior valor rejeitado
    7 Preencher uma tabela de traçagem para documentar um dry-run de um algoritmo • Incluindo, em cada etapa do algoritmo: – variáveis – saídas – prompts ao usuário
    8 Identificar erros em algoritmos fornecidos e sugerir formas de corrigi-los
    9 Escrever e alterar algoritmos para problemas ou cenários dados, usando: pseudocódigo, código de programa e fluxogramas • Precisão é necessária ao escrever algoritmos, ex: x > y é aceitável, mas x is greater than y não é aceitável • Veja seção 4 para símbolos de fluxograma • Veja seção 4 para pseudocódigo

    Fonte: Programa Cambridge International

    7.1

    Ciclo de vida do desenvolvimento de programas

    O ciclo de vida do desenvolvimento de programas 程序开发生命周期 é o conjunto de etapas usadas para criar um programa. Existem quatro etapas.

    Um programador digitando código em um computador
    O software é escrito por programadores, que seguem o ciclo de desenvolvimento
    Etapa O que você faz
    análise 分析 estudar o problema e descobrir o que é necessário
    projeto 设计 planejar como o programa funcionará
    codificação 编码 escrever o código do programa e testá-lo conforme avança
    testes 测试 executar o programa finalizado com dados de teste para encontrar erros
    Quatro etapas em sequência — análise, projeto, codificação, testes — com uma seta voltando dos testes para o projeto
    As quatro etapas do desenvolvimento de programas; testes retroalimentam para corrigir e refinar o projeto
    Um fluxograma de programa com caixas de processo losangos de decisão
    Um fluxograma de programa detalha os passos e decisões de um programa durante a etapa de projeto

    Análise

    Na análise você entende o problema. Duas habilidades-chave ajudam:

    • abstração 抽象 — manter apenas os detalhes importantes e ignorar o resto;
    • decomposição 分解 — dividir um grande problema em partes menores e mais fáceis.

    Projeto

    No projeto você planeja a solução, frequentemente usando decomposição. Você pode mostrar as partes como sub-sistemas 子系统 em um diagrama estrutural 结构图 (um gráfico que divide um sistema em caixas menores).

    Codificação e testes

    Na codificação você escreve o código do programa. Você usa testes iterativos 迭代测试 — testa pequenas partes repetidamente à medida que as constrói. Nos testes você executa todo o programa com dados de teste 测试数据 para verificar se funciona.

    Vocabulário Treinar
    Inglês Chinês Pinyin
    flowchart/ˈfləʊtʃɑːt/ 流程图 liú chéng tú
    7.2

    Ferramentas de projeto

    Você pode planejar uma solução de três maneiras principais.

    • um diagrama estrutural — mostra as partes de um sistema e como elas se encaixam;
    • um fluxograma 流程图 — um diagrama usando caixas e setas para mostrar os passos em ordem;
    • pseudocódigo 伪代码 — passos escritos em inglês simples, similar a código (não uma linguagem real).
    Um fluxograma para somar os números de 1 a n, com símbolos de início/fim, entrada/saída, processo e decisão, além de uma legenda nomeando cada forma
    Um fluxograma para o algoritmo de soma, usando os símbolos padrão (início/fim, entrada/saída, processo, decisão)
    7.3

    Algoritmos

    Ordenação bolha, passo a passo

    Um algoritmo 算法 é um conjunto de passos, na ordem correta, que resolve um problema. Todo algoritmo pode ser dividido em três partes:

    • entrada 输入 — os dados que entram;
    • processamento 处理 — o trabalho realizado nos dados;
    • saída 输出 — o resultado que sai.

    Isso é chamado de decomposição em entradas, processos e saídas. Por exemplo, para "encontrar a média de três notas": as entradas são as três notas; o processamento é somá-las e dividir por 3; a saída é a média.

    Três caixas — ENTRADA (as 3 notas), PROCESSO (somá-las, dividir por 3), SAÍDA (a média) — unidas por setas
    Todo algoritmo se decompõe em entrada, processamento e saída — aqui, encontrando a média de três notas
    7.4

    Validação e verificação

    Quando os dados são inseridos, você os verifica para reduzir erros.

    Validação 验证 verifica se os dados são razoáveis e seguem as regras. Ela não pode verificar se os dados são verdadeiros, apenas se são permitidos.

    Verificação de validação O que ela verifica
    verificação de intervalo 范围检查 o valor está entre um valor mínimo e máximo permitido
    verificação de comprimento 长度检查 o número de caracteres é permitido (ex: uma senha ≥ 8)
    verificação de tipo 类型检查 o dado é do tipo correto (ex: um número, não letras)
    verificação de presença 存在性检查 algo foi realmente inserido (não deixado em branco)
    format check 格式检查 os dados estão no padrão correto (ex.: data como dd/mm/yyyy)
    check digit 校验码 um dígito extra confirma que um número foi inserido corretamente

    Verification 核实 verifica que os dados foram copiados ou inseridos corretamente (sem erros ao digitar). Dois métodos:

    • visual check 目视检查 — uma pessoa compara os dados digitados com o original;
    • double entry 双重输入 — os dados são inseridos duas vezes e as duas cópias são comparadas.
    Vocabulário Treinar
    Inglês Chinês Pinyin
    format check/ˈfɔːmæt tʃek/ 格式检查 gé shì jiǎn chá
    check digit/tʃek ˈdɪdʒɪt/ 校验码 jiào yàn mǎ
    verification/ˌverɪfɪˈkeɪʃn/ 核实 hé shí
    visual check/ˈvɪʒuːəl tʃek/ 目视检查 mù shì jiǎn chá
    double entry/ˈdʌbl ˈentri/ 双重输入 shuāng chóng shū rù
    7.5

    Trace tables

    Uma trace table 追踪表 registra o valor de cada variável conforme um algoritmo é executado, passo a passo. Ela ajuda você a:

    A trace table with columns count, total, output
    Uma tabela de rastreamento registra o valor de cada variável enquanto o programa executa
    • verificar se um algoritmo funciona corretamente;
    • descobrir o que um algoritmo faz seguindo-o com dados fornecidos.

    Exemplo: faça a traça deste algoritmo com a entrada 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

    A traça mostra que o algoritmo soma de 1 até n. Com entrada 5, a saída é 15.

    Worked example. Faça a traça deste algoritmo e dê a saída.

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

    DIV retorna apenas a parte inteira de uma divisão. Faça uma linha por passagem: x torna-se 10 (count 1), depois 5 (count 2), depois 2 (count 3), depois 1 (count 4). Agora x > 1 é falso, então o loop para e a saída é 4. Dois hábitos protegem essas marcas: teste a condição antes de cada passagem em vez de depois, e escreva uma nova linha para cada passagem — tentar guardar os valores na cabeça é o que causa erros nas traces.

    Explorar

    Uma tabela de traçado

    Passe pela iteração e preencha a tabela de traçado, uma linha por passagem.

    Vocabulário Treinar
    Inglês Chinês Pinyin
    pseudocode/ˈsuːdəʊkəʊd/ 伪代码 wěi dài mǎ
    algorithm/ˈælɡərɪθəm/ 算法 suàn fǎ
    input/ˈɪnpʊt/ 输入 shū rù
    processing/ˈprəʊsesɪŋ/ 处理 chǔ lǐ
    output/ˈaʊtpʊt/ 输出 shū chū
    trace table/treɪs ˈteɪbl/ 追踪表 zhuī zōng biǎo
    7.6

    Test data

    Test data são dados usados para testar um programa. Existem quatro tipos que você deve saber.

    Tipo Significado Example (age 0–120 allowed)
    normal 正常数据 dados sensatos que devem ser aceitos 25
    abnormal 异常数据 dados errados que devem ser rejeitados -4 or "cat"
    extreme 极端数据 os maiores e menores valores ainda permitidos 0 and 120
    boundary 边界数据 os valores de cada lado de um limite (um permitido, outro não) 120 and 121
    Vocabulário Treinar
    Inglês Chinês Pinyin
    test data/test ˈdeɪtə/ 测试数据 cè shì shù jù
    normal/ˈnɔːml/ 正常数据 zhèng cháng shù jù
    abnormal/əbˈnɔːml/ 异常数据 yì cháng shù jù
    extreme/ekˈstriːm/ 极端数据 jí duān shù jù
    boundary/ˈbaʊndəri/ 边界数据 biān jiè shù jù
    7.7

    Standard methods of solution

    Você deve conhecer esses algoritmos comuns.

    Busca linear

    Uma busca linear 线性查找 verifica cada item de uma lista, um por um, até encontrar o valor desejado ou chegar ao final.

    Found ← FALSE
    FOR I ← 0 TO 9
        IF List[I] = SearchValue
          THEN
            Found ← TRUE
        ENDIF
    NEXT I
    OUTPUT Found
    
    Uma lista de oito números sendo analisados da esquerda para a direita, procurando por 5; os quatro primeiros não correspondem e o quinto é encontrado
    Linear search verifica cada item em sequência do início até encontrar o valor

    Bubble sort (Ordenação por bolha)

    Um bubble sort 冒泡排序 coloca uma lista em ordem. Ele compara cada par de itens adjacentes e os troca se estiverem na ordem errada. Isso se repete até que nenhuma mais troca seja necessária.

    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
    
    Uma lista onde o primeiro par 5 e 2 está fora de ordem, mostrado trocando para 2 e 5, com uma nota para repetir para cada par
    Bubble sort compara cada par adjacente e os troca se estiverem fora de ordem, repetindo até ordenar

    Somatório e contagem

    • totalling 求和 — continuar somando valores a um total acumulado (Total ← Total + Value).
    • counting 计数 — adicionar 1 a um contador cada vez que algo acontece (Count ← Count + 1).

    Maximum, minimum and average

    • para encontrar o maximum 最大值: manter o maior valor visto até agora.
    • para encontrar o minimum 最小值: manter o menor valor visto até agora.
    • para encontrar o average 平均值: dividir o total pela quantidade de valores.
    Total ← 0
    FOR I ← 0 TO 9
        Total ← Total + List[I]
    NEXT I
    Average ← Total / 10
    OUTPUT Average
    
    Vocabulário Treinar
    Inglês Chinês Pinyin
    linear search/ˈlɪnɪə sɜːtʃ/ 线性查找 xiàn xìng chá zhǎo
    bubble sort/ˈbʌbl sɔːt/ 冒泡排序 mào pào pái xù
    totalling/ˈtəʊtəlɪŋ/ 求和 qiú hé
    counting/ˈkaʊntɪŋ/ 计数 jì shù
    maximum/ˈmæksɪməm/ 最大值 zuì dà zhí
    minimum/ˈmɪnɪməm/ 最小值 zuì xiǎo zhí
    average/ˈævrɪdʒ/ 平均值 píng jūn zhí
    7.8

    Dicas de prova

    • Aprenda as quatro etapas do ciclo de vida: análise → design → codificação → teste. Abstraction mantém apenas os detalhes importantes; decomposition divide um problema em partes menores.
    • Validação verifica se os dados são sensatos (verificações de faixa, comprimento, tipo, presença, formato); verification verifica se foram copiados corretamente (uma verificação visual ou entrada dupla).
    • Aprenda os quatro tipos de dados de teste: normal (aceito), abnormal (rejeitado), extreme (os maiores/menores ainda permitidos), boundary (os valores de ambos os lados de um limite).
    • Para descobrir o que um algoritmo faz, preencha uma trace table — anote o valor de cada variável em cada etapa.
    • Conheça os algoritmos padrão: busca linear (verifique cada item em sequência) e bubble sort (troque pares adjacentes até que nenhuma troca seja necessária).
    Vocabulário Treinar
    Inglês Chinês Pinyin
    program development life cycle/ˈprəʊɡræm dɪˈveləpmənt laɪf ˈsaɪkl/ 程序开发生命周期 chéng xù kāi fā shēng mìng zhōu qī
    analysis/əˈnæləsɪs/ 分析 fēn xī
    design/dɪˈzaɪn/ 设计 shè jì
    coding/ˈkəʊdɪŋ/ 编码 biān mǎ
    testing/ˈtestɪŋ/ 测试 cè shì
    abstraction/əbˈstrækʃn/ 抽象 chōu xiàng
    decomposition/ˌdiːkɒmpəˈzɪʃn/ 分解 fēn jiě
    sub-systems/sʌb ˈsɪstəmz/ 子系统 zi xì tǒng
    structure diagram/ˈstrʌktʃə ˈdaɪəɡræm/ 结构图 jié gòu tú
    iterative testing/ˈɪtərətɪv ˈtestɪŋ/ 迭代测试 dié dài cè shì
    validation/ˌvælɪˈdeɪʃn/ 验证 yàn zhèng
    range check/reɪndʒ tʃek/ 范围检查 fàn wéi jiǎn chá
    length check/leŋθ tʃek/ 长度检查 cháng dù jiǎn chá
    type check/taɪp tʃek/ 类型检查 lèi xíng jiǎn chá
    presence check/ˈprezəns tʃek/ 存在性检查 cún zài xìng jiǎn chá
  • 8

    Programação

    Assistir aula
    8.1

    Variables and constants

    Programa
    Os candidatos devem ser capazes de: Notas e orientações
    1 Declarar e usar variáveis e constantes
    2 Compreender e usar tipos de dados básicos • Incluindo: – inteiro – real – char – string – Booleano
    3 Compreender e usar entrada e saída
    4 (a) Compreender e usar o conceito de sequência
    (b) Compreender e usar o conceito de seleção • Incluindo: – instruções IF – instruções CASE
    (c) Compreender e usar o conceito de iteração • Incluindo: – laços controlados por contagem – laços de pré-condição – laços de pós-condição
    (d) Compreender e usar os conceitos de somatório e contagem
    (e) Compreender e usar o conceito de manipulação de strings • Incluindo: – comprimento – substring – upper – lower • O primeiro caractere da string pode ser posição zero ou um
    (f) Compreender e utilizar operadores aritméticos, relacionais e lógicos • Aritméticos, limitados a: – + – – – / – * – ^ (elevado à potência) – MOD – DIV • Relacionais, limitados a: – = – < – <= – > – >= – <> (diferente de) • Lógicos, limitados a: – AND – OR – NOT
    5 Compreender e usar instruções aninhadas • Incluindo seleção e iteração aninhadas • Os candidatos não serão exigidos a escrever mais de três níveis de instruções aninhadas
    6 (a) Compreender o significado de procedimentos, funções e parâmetros (b) Definir e usar procedimentos e funções, com ou sem parâmetros (c) Compreender e usar variáveis locais e globais • Procedimentos e funções podem ter até três parâmetros
    7 Compreender e usar rotinas de biblioteca • Incluindo: – MOD – DIV – ROUND – RANDOM
    8 Compreender como criar um programa mantensível • Incluindo uso adequado de: – identificadores significativos – recurso de comentários fornecido pela linguagem de programação – procedimentos e funções – comentários relevantes e apropriados da sintaxe • Use identificadores significativos para: – variáveis – constantes – arrays – procedimentos e funções

    Fonte: Programa Cambridge International

    Uma variable 变量 é um armazém nomeado que segura um valor que pode mudar enquanto o programa executa. Uma constante 常量 é um armazém nomeado cujo valor é fixo e não muda.

    A variable named age holding the value 16
    Uma variável é um armazém nomeado cujo valor pode mudar
    Lines of program code on a screen
    Variables and constants são armazéns nomeados para valores, definidos no código do programa

    Você deve declare 声明 eles (dizer seu nome e tipo) antes do uso:

    DECLARE Score : INTEGER
    DECLARE Name : STRING
    CONSTANT Pi ← 3.142
    
    Two RAM memory modules
    Enquanto um programa executa, suas variáveis são mantidas na memória do computador (RAM)

    Use uma constante para um valor que nunca muda (como Pi), para que seja definido em um único lugar e fácil de ler.

    Explorar

    Variáveis e atribuição

    Passe pelas linhas e observe cada variável assumir o seu novo valor.

    Vocabulário Treinar
    Inglês Chinês Pinyin
    variable/ˈveərɪəbl/ 变量 biàn liàng
    constant/ˈkɒnstənt/ 常量 cháng liàng
    declare/dɪˈkleə/ 声明 shēng míng
    8.1

    Data types

    Um data type 数据类型 diz que tipo de valor uma variável segura. Você deve conhecer cinco tipos básicos.

    Tipos de dados: inteiro (7), real (3.5), char ('A'), string ("hello"), booleano (true/false)
    Os tipos de dados básicos: integer, real, char, string e boolean
    Tipo Holds Exemplo
    integer 整数 um número inteiro 42, -7
    real 实数 um número com ponto decimal 3.14, -0.5
    char 字符 um único caractere 'A', '?'
    string 字符串 uma sequência de caracteres "Hello"
    Boolean 布尔值 um de dois valores TRUE ou FALSE
    Vocabulário Treinar
    Inglês Chinês Pinyin
    data type/ˈdeɪtə taɪp/ 数据类型 shù jù lèi xíng
    integer/ˈɪntɪdʒə/ 整数 zhěng shù
    real/rɪəl/ 实数 shí shù
    char/tʃɑː/ 字符 zì fú
    string/strɪŋ/ 字符串 zì fú chuàn
    Boolean/ˈbuːlɪən/ 布尔值 bù ěr zhí
    8.1

    Input and output

    Entrada 输入 lê um valor do usuário. Saída 输出 mostra um valor na tela.

    OUTPUT "What is your name?"
    INPUT Name
    OUTPUT "Hello ", Name
    
    Vocabulário Treinar
    Inglês Chinês Pinyin
    input/ˈɪnpʊt/ 输入 shū rù
    output/ˈaʊtpʊt/ 输出 shū chū
    8.1

    The three basic structures

    Todo programa é construído a partir de três estruturas de controle.

    Três pequenos fluxogramas: sequência (caixas em linha), seleção (um teste ramificando duas maneiras), e iteração (um teste com um corpo que retorna em loop)
    As três estruturas de controle: sequence执行步骤按顺序,selection选择分支,iteration重复主体

    Sequência

    Sequência 顺序 significa que as etapas são executadas uma após a outra, em ordem, de cima para baixo.

    INPUT Length
    INPUT Width
    Area ← Length * Width
    OUTPUT Area
    

    Seleção

    Seleção 选择 escolhe quais etapas executar, baseado em uma condição. Use uma instrução IF, ou uma instrução CASE quando houver muitas opções.

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

    Iteração

    Iteração 迭代 (um loop 循环) repete etapas. Existem três tipos.

    Um count-controlled loop 计数循环 repete um número fixo de vezes:

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

    Um pre-condition loop 前测循环 verifica a condição antes de cada repetição, então pode executar zero vezes:

    WHILE Answer <> "stop" DO
        INPUT Answer
    ENDWHILE
    

    Um post-condition loop 后测循环 verifica a condição depois de cada repetição, então sempre executa pelo menos uma vez:

    REPEAT
        INPUT Password
    UNTIL Password = "secret"
    
    Dois fluxogramas de loop: WHILE testa a condição antes do corpo; REPEAT executa o corpo primeiro e testa depois
    Um loop pre-condition (WHILE) testa antes do corpo, então pode executar zero vezes; um loop post-condition (REPEAT) testa depois, então executa pelo menos uma vez
    Explorar

    Como uma escada IF … ELSE IF decide

    As condições são testadas de cima para baixo; a PRIMEIRA que for verdadeira executa e as outras são puladas. Deslize a pontuação e observe qual ramificação acende.

    Explorar

    Seleção

    Altere o valor e observe qual ramo é executado — seleção em ação.

    Vocabulário Treinar
    Inglês Chinês Pinyin
    sequence/ˈsiːkwəns/ 顺序 shùn xù
    selection/sɪˈlekʃn/ 选择 xuǎn zé
    iteration/ˌɪtəˈreɪʃn/ 迭代 dié dài
    loop/luːp/ 循环 xún huán
    count-controlled loop/kaʊnt kənˈtrəʊld luːp/ 计数循环 jì shù xún huán
    pre-condition loop/priː kənˈdɪʃn luːp/ 前测循环 qián cè xún huán
    post-condition loop/pəʊst kənˈdɪʃn luːp/ 后测循环 hòu cè xún huán
    8.1

    Somatório e contagem

    • totalling 求和 — continuar somando valores a um total acumulado: Total ← Total + Value.
    • counting 计数 — adicionar 1 a um contador cada vez: Count ← Count + 1.
    count = count + 1 conta até 1; total = total + value soma a um total acumulado
    Um contador conta até 1; um total constrói uma soma acumulada

    Uma tabela de rastreamento seguindo um loop sobre os valores 4, 7 e 5: total vai 0, 4, 11, 16 enquanto count vai 0, 1, 2, 3 *A trace table segue um loop de totalling e counting passo a passo

    Total ← 0
    FOR I ← 1 TO 10
        INPUT Mark
        Total ← Total + Mark
    NEXT I
    OUTPUT Total
    

    Worked example. Um programa deve ler 5 notas, depois exibir o total e a média.

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

    Duas linhas transportam as notas. Total ← 0 deve ficar antes do loop: coloque-o dentro e o total será reiniciado em cada passagem, então o programa exibirá apenas a última nota. E Average ← Total / 5 deve ficar depois do loop, porque o total não está completo até que todas as notas tenham sido somadas. Inicialize antes, calcule depois — essa ordem é o que a questão realmente testa.

    Vocabulário Treinar
    Inglês Chinês Pinyin
    totalling/ˈtəʊtəlɪŋ/ 求和 qiú hé
    counting/ˈkaʊntɪŋ/ 计数 jì shù
    8.1

    Operators

    Operadores aritméticos

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

    Por exemplo, 17 MOD 5 é 2, e 17 DIV 5 é 3.

    Relational operators

    Estes comparam dois valores e dão um resultado Booleano: =, <, <=, >, >=, e <> (not equal to).

    Logical operators

    Estes unem condições: AND (ambas devem ser verdadeiras), OR (pelo menos uma deve ser verdadeira), NOT (reverte verdadeiro/falso).

    Três famílias de operadores: operadores aritméticos como mais e vezes dão um número, operadores relacionais como menor-que comparam e dão verdadeiro ou falso, operadores lógicos E OU NÃO juntam condições
    As três famílias de operadores: aritméticos, relacionais e lógicos
    IF Age >= 13 AND Age <= 19
      THEN
        OUTPUT "Teenager"
    ENDIF
    
    Vocabulário Treinar
    Inglês Chinês Pinyin
    remainder/rɪˈmeɪndə/ 余数 yú shù
    8.1

    Manipulação de strings

    Uma string é feita de caracteres. Operações úteis:

    • comprimento 长度 — o número de caracteres na string;
    • substring 子串 — uma parte menor retirada da string;
    • upper case 大写 — alterar letras para maiúsculas;
    • lower case 小写 — alterar letras para minúsculas.
    name ← "Computer"
    OUTPUT LENGTH(name)          // 8
    OUTPUT SUBSTRING(name, 1, 4) // "Comp"
    OUTPUT UCASE(name)           // "COMPUTER"
    OUTPUT LCASE(name)           // "computer"
    

    (O primeiro caractere pode ser contado como posição 0 ou posição 1, dependendo da linguagem.)

    Explorar

    SUBSTRING: pegar parte de uma string

    O primeiro caractere está na posição 1. SUBSTRING(Palavra, Início, Comprimento) pega Caracteres Length começando em Início — arraste as duas alças e leia a chamada que ela constrói.

    Vocabulário Treinar
    Inglês Chinês Pinyin
    substring/ˈsʌbstrɪŋ/ 子串 zi chuàn
    upper case/ˈʌpə keɪs/ 大写 dà xiě
    lower case/ˈləʊə keɪs/ 小写 xiǎo xiě
    length/leŋθ/ 长度 cháng dù
    8.1

    Nested statements

    Uma nested statement 嵌套语句 é uma estrutura de controle colocada dentro de outra. Você pode aninhar selection e iteration.

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

    Você não precisará escrever mais de três níveis de aninhamento.

    Vocabulário Treinar
    Inglês Chinês Pinyin
    nested statement/ˈnestɪd ˈsteɪtmənt/ 嵌套语句 qiàn tào yǔ jù
    8.1

    Procedimentos e funções

    Para evitar repetir código, você pode dividir um programa em blocos nomeados.

    • Uma procedure 过程 (rotina) é um bloco de código nomeado que executa uma tarefa. Você a executa com CALL.
    • Uma função 函数 (função) é como uma procedure, mas ela retorna um valor para o local onde foi chamada.

    Um parameter 参数 (parâmetro) é um valor passado para uma procedure ou função (até três parâmetros).

    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
    

    Variáveis locais e globais

    • Uma local variable 局部变量 (variável local) é declarada dentro de uma procedure ou função. Ela só pode ser usada ali.
    • Uma global variable 全局变量 (variável global) é declarada no programa principal. Ela pode ser usada em qualquer lugar.

    Variáveis locais são mais seguras, pois não podem ser alteradas por engano a partir de outra parte do programa.

    Vocabulário Treinar
    Inglês Chinês Pinyin
    procedure/prəˈsiːdʒə/ 过程 guò chéng
    function/ˈfʌŋkʃn/ 函数 hán shù
    parameter/pəˈræmɪtə/ 参数 cān shù
    local variable/ˈləʊkl ˈveərɪəbl/ 局部变量 jú bù biàn liàng
    global variable/ˈɡləʊbl ˈveərɪəbl/ 全局变量 quán jú biàn liàng
    8.1

    Rotinas da biblioteca

    Uma library routine 库程序 (rotina de biblioteca) é um trecho de código pronto para uso. Você deve conhecer estes:

    Routine O que faz
    MOD dá o resto de uma divisão
    DIV dá a parte inteira de uma divisão
    ROUND arredonda um número real para um número de casas decimais
    RANDOM dá um número aleatório
    Vocabulário Treinar
    Inglês Chinês Pinyin
    library routine/ˈlaɪbrəri ruːˈtiːn/ 库程序 kù chéng xù
    8.1

    Escrevendo um programa mantensável

    Um programa maintainable 可维护 (mantensável) é fácil para outras pessoas lerem e alterarem depois. Para criar um:

    • usar meaningful identifiers 有意义的标识符 — nomes claros para variáveis, constantes, arrays, procedures e functions (totalScore, não x);
    • adicione comments 注释 (comentários) para explicar o que as partes do código fazem;
    • use procedures e functions para dividir o trabalho em pequenos blocos.
    Vocabulário Treinar
    Inglês Chinês Pinyin
    maintainable/meɪnˈteɪnəbl/ 可维护的 kě wéi hù de
    meaningful identifiers/ˈmiːnɪŋfl aɪˈdentɪfaɪəz/ 有意义的标识符 yǒu yì yì de biāo shí fú
    comments/ˈkɒments/ 注释 zhù shì
    8.2

    Matrizes

    Programa
    Os candidatos devem ser capazes de: Notas e orientações
    1 Declarar e usar arrays unidimensionais (1D) e bidimensionais (2D)
    2 Compreender o uso de arrays • Incluindo o uso de variáveis como índices em arrays
    3 Escrever valores em e ler valores de um array usando iteração • O primeiro índice pode ser zero ou um • Incluindo iteração aninhada

    Fonte: Programa Cambridge International

    Um array 数组 (array) é uma única variável que armazena muitos valores do mesmo tipo, encontrados por um index 索引 (índice, um número de posição).

    Arrays unidimensionais

    Um one-dimensional (1D) array 一维数组 (array unidimensional) é como uma lista simples.

    DECLARE Scores : ARRAY[1:5] OF INTEGER
    Scores[1] ← 90
    Scores[2] ← 75
    OUTPUT Scores[1]
    
    Cinca caixas em fileira rotuladas com índice 1 a 5, contendo valores, com o valor no índice 2 destacado como 75
    Um array 1D armazena muitos valores em uma única variável; cada um é encontrado pelo seu índice

    Você pode usar um loop para preencher ou ler um array:

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

    Arrays bidimensionais

    Um two-dimensional (2D) array 二维数组 (array bidimensional) é como uma tabela com linhas e colunas. Ele usa dois índices.

    DECLARE Grid : ARRAY[1:3, 1:3] OF INTEGER
    Grid[1, 1] ← 5
    Grid[2, 3] ← 8
    
    A 3 por 3 grade com linhas e colunas numeradas; a célula na linha 2, coluna 3 está destacada e rotulada como linha da grade 2 coluna 3
    Um array 2D é uma tabela; cada valor é encontrado por dois índices, [linha, coluna]

    Você lê um array 2D com um loop dentro de outro loop (iteração aninhada).

    Explorar

    Matrizes

    Escolha uma linha e uma coluna para ler uma célula. Os arrays da Cambridge contam a partir de 1, e um elemento 2D é escrito com UM par de parênteses — Grid[2, 3].

    Vocabulário Treinar
    Inglês Chinês Pinyin
    array/əˈreɪ/ 数组 shù zǔ
    index/ˈɪndeks/ 索引 suǒ yǐn
    one-dimensional (1D) array/wʌn daɪˈmenʃənl əˈreɪ/ 一维数组 yī wéi shù zǔ
    two-dimensional (2D) array/tuː daɪˈmenʃənl əˈreɪ/ 二维数组 èr wéi shù zǔ
    8.3

    Manipulação de arquivos

    Programa
    Os candidatos devem ser capazes de: Notas e orientações
    1 Compreender o propósito de armazenar dados em um arquivo para uso por um programa
    2 Abrir, fechar e usar um arquivo para leitura e escrita • Incluindo: – ler e escrever itens únicos de dados – ler e escrever uma linha de texto

    Fonte: Programa Cambridge International

    Um programa pode armazenar dados em um arquivo 文件 (arquivo) para que ele seja mantido após o programa parar. Você deve abrir o arquivo, usá-lo e depois fechá-lo.

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

    Você pode ler e escrever itens individuais de dados ou uma linha inteira de texto. Sempre feche um arquivo quando terminar de usá-lo.

    Vocabulário Treinar
    Inglês Chinês Pinyin
    file/faɪl/ 文件 wén jiàn
    8.3

    Dicas de prova

    • Uma variable (variável) pode mudar enquanto o programa roda; uma constante (constante) é fixa. Aprenda os cinco tipos de dados: integer, real, char, string, Boolean.
    • Todo programa é construído a partir de três estruturas: sequence (sequência), selection (seleção - IF / CASE) e iteration (iteração - loops).
    • Um loop WHILE testa antes do corpo, então pode rodar zero vezes; um loop REPEAT … UNTIL testa depois, então sempre roda pelo menos uma vez.
    • MOD dá o resto e DIV a parte inteira de uma divisão: 17 MOD 5 é 2, 17 DIV 5 é 3.
    • Uma função retorna um valor; uma procedure não. Uma variável local funciona apenas dentro do seu bloco; uma global funciona em qualquer lugar.
  • 9

    Bancos de Dados

    Assistir aula
    Programa
    Os candidatos devem ser capazes de: Notas e orientações
    1 Definir um banco de dados de tabela única a partir de requisitos de armazenamento de dados dados • Incluindo: – campos – registros – validação
    2 Sugerir tipos de dados básicos adequados • Incluindo: – texto/alfanumérico – character – Booleano – inteiro – real – data/hora
    3 Compreender o propósito de uma chave primária e identificar uma chave primária adequada para uma tabela de banco de dados dada
    4 Ler, compreender e completar scripts de linguagem de consulta estruturada (SQL) para consultar dados armazenados em uma única tabela de banco de dados • Limitado a: – SELECT – FROM – WHERE – ORDER BY DESCENDENTE – ORDER BY ASCENDENTE – SUM – COUNT – AND – OR • Identificar a saída fornecida por uma instrução SQL que consultará o conteúdo dado de uma tabela de banco de dados

    Fonte: Programa Cambridge International

    9.1

    O que é um banco de dados?

    Um database 数据库 (banco de dados) é um repositório organizado de dados, mantido para facilitar a pesquisa, ordenação e atualização. No IGCSE você trabalha com um single-table database 单表数据库 (banco de dados de tabela única) — todos os dados estão em uma única tabela.

    Fileiras de gavetas pequenas rotuladas num catálogo de cartões de biblioteca
    Um catálogo de cartões de biblioteca é um banco de dados em papel — registros que você pode pesquisar e ordenar por índice
    Fileiras de servidores num data center
    Grandes bancos de dados modernos são armazenados em servidores em data centers
    Vocabulário Treinar
    Inglês Chinês Pinyin
    database/ˈdeɪtəbeɪs/ 数据库 shù jù kù
    single-table database/ˈsɪŋɡl ˈteɪbl ˈdeɪtəbeɪs/ 单表数据库 dān biǎo shù jù kù
    9.2

    Registros e campos

    Uma tabela de banco de dados é feita de registros e campos.

    • Um record 记录 (registro) é uma linha na tabela — todos os dados sobre uma coisa (por exemplo, um aluno).
    • Um campo 字段 (campo) é uma coluna na tabela — uma peça de dados que todo registro tem (por exemplo "Nome").
    StudentID FirstName DateOfBirth FormClass FeesPaid
    1 Amy 14/03/2009 10A VERDADEIRO
    2 Ben 02/11/2008 10B FALSO

    Aqui cada row (linha) é um record, e cada column (coluna) é um field.

    A tabela Student com cada linha rotulada como um record, cada coluna como um field, e a coluna StudentID destacada como a chave primária
    Cada linha é um record e cada coluna é um field; a chave primária (StudentID) é única para cada record
    Vocabulário Treinar
    Inglês Chinês Pinyin
    record/ˈrekɔːd/ 记录 jì lù
    field/fiːld/ 字段 zì duàn
    9.3

    Tipos de dados para campos

    Cada campo armazena um único data type 数据类型 (tipo de dado). Você escolhe o tipo que melhor se adapta aos dados.

    Tipos de campo: text (um nome), number (uma idade), date/time (uma data de nascimento), boolean (sim/não)
    Tipos de campo: texto, número, data/hora e booleano
    Data type Usado para Exemplo
    text/alphanumeric 文本 (texto/alfanumérico) letras, dígitos e símbolos "10A", "Amy"
    character 字符 (caractere) um único caractere 'M'
    Boolean 布尔值 (booleano) um de dois valores TRUE / FALSE
    integer 整数 (inteiro) um número inteiro 42
    real 实数 (real) um número com ponto decimal 3.5
    date/time 日期时间 (data/hora) uma data ou uma hora 14/03/2009
    Vocabulário Treinar
    Inglês Chinês Pinyin
    data type/ˈdeɪtə taɪp/ 数据类型 shù jù lèi xíng
    text/alphanumeric/tekst ˌælfənjuːˈmerɪk/ 文本 wén běn
    character/ˈkærɪktə/ 字符 zì fú
    Boolean/ˈbuːlɪən/ 布尔值 bù ěr zhí
    integer/ˈɪntɪdʒə/ 整数 zhěng shù
    real/rɪəl/ 实数 shí shù
    date/time/deɪt taɪm/ 日期时间 rì qī shí jiān
    9.4

    A chave primária

    Uma primary key 主键 (chave primária) é um campo que armazena um valor unique 唯一 (único) para cada record. Nenhum dois records podem ter a mesma chave primária, então ela permite selecionar exatamente um record.

    Na tabela acima, StudentID é uma boa primary key porque cada aluno tem um número diferente. Um campo como FormClass seria uma má primary key, porque muitos alunos compartilham a mesma classe.

    Vocabulário Treinar
    Inglês Chinês Pinyin
    primary key/ˈpraɪməri kiː/ 主键 zhǔ jiàn
    unique/juːˈniːk/ 唯一的 wéi yī de
    9.5

    Validação em um banco de dados

    Quando dados são inseridos em um banco de dados, as verificações de validation 验证 (validação) garantem que sejam sensatas — por exemplo, uma verificação de intervalo num campo de idade, ou uma verificação de presença para garantir que um campo não fique vazio. (Você viu essas verificações no tópico 7.)

    Uma verificação de intervalo num campo de idade aceita 16 mas rejeita 200
    Um check de intervalo aceita valores sensatos e rejeita os restantes
    Vocabulário Treinar
    Inglês Chinês Pinyin
    validation/ˌvælɪˈdeɪʃn/ 验证 yàn zhèng
    9.6

    Linguagem de Consulta Estruturada (SQL)

    Structured Query Language 结构化查询语言 (SQL) é uma linguagem usada para query 查询 (consultar) um banco de dados — para extrair os records que você deseja. Você deve entender e completar scripts SQL.

    SELECT, FROM e WHERE

    • SELECT diz quais fields mostrar.
    • FROM diz qual table usar.
    • WHERE fornece uma condition 条件 (condição), para que apenas os records correspondentes sejam mostrados.
    Uma consulta SQL: SELECT name FROM students WHERE age > 15
    SELECT escolhe campos, FROM nomeia a tabela, WHERE define a condição
    SELECT FirstName, FormClass
    FROM Student
    WHERE FeesPaid = TRUE;
    

    Isso mostra o primeiro nome e a classe de cada aluno que pagou as taxas.

    Use * para selecionar todos os fields:

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

    ORDER BY

    ORDER BY ordena os resultados. Use ASC para ascendente 升序 (crescente, menor primeiro, A→Z) ou DESC para descendente 降序 (decrescente, maior primeiro, Z→A).

    SELECT FirstName, DateOfBirth
    FROM Student
    ORDER BY DateOfBirth ASC;
    

    AND e OR

    Junte condições com AND (ambas devem ser verdadeiras) ou OR (pelo menos uma deve ser verdadeira).

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

    SUM e COUNT

    • SUM soma os valores num campo numérico.
    • COUNT conta quantos records correspondem.
    SELECT COUNT(StudentID)
    FROM Student
    WHERE FeesPaid = FALSE;
    

    Isso conta quantos alunos não pagaram. SUM funciona da mesma forma, mas soma um campo numérico em vez de contar linhas.

    Calculando a saída

    Para encontrar a saída de um script SQL, leia-o nesta ordem:

    1. FROM — qual table;
    2. WHERE — manter apenas os records que correspondem à condição;
    3. SELECT — mostrar apenas os fields escolhidos;
    4. ORDER BY — colocar os resultados em ordem.
    Quatro passos em ordem: FROM (qual table), WHERE (manter linhas correspondentes), SELECT (mostrar fields escolhidos), ORDER BY (ordenar resultados)
    Leia uma consulta SQL nesta ordem: FROM (qual table), WHERE (quais linhas), SELECT (quais fields), ORDER BY (ordenar)

    Seguindo esses passos, você pode escrever exatamente quais linhas e colunas a consulta retornará.

    Exemplo resolvido. Uma table Book tem os fields Title, Author, Price e InStock. Escreva uma query mostrando o título e o preço de cada livro de Orwell que está em estoque, do mais barato ao mais caro.

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

    Construa na ordem de leitura: FROM nomeia a table; WHERE mantém apenas os records correspondentes, e como há duas condições elas precisam de AND; SELECT mostra apenas os dois fields pedidos; ORDER BY … ASC os ordena. Valores de texto vão entre aspas, e apenas os fields que a pergunta pede pertencem em SELECT - adicionar Author apenas porque você filtrou por ele é a maneira mais comum de perder pontos aqui.

    Explorar

    SELECT … WHERE

    Passe por uma consulta: WHERE filtra linhas, SELECT escolhe colunas.

    Vocabulário Treinar
    Inglês Chinês Pinyin
    structured query language/ˈstrʌktʃəd ˈkwɪərɪ ˈlæŋɡwɪdʒ/ 结构化查询语言 jié gòu huà chá xún yǔ yán
    query/ˈkwɪərɪ/ 查询 chá xún
    condition/kənˈdɪʃn/ 条件 tiáo jiàn
    ascending/əˈsendɪŋ/ 升序 shēng xù
    descending/dɪˈsendɪŋ/ 降序 jiàng xù
    9.7

    Dicas de prova

    • Um record é uma linha (todos os dados sobre uma coisa); um campo é uma coluna (um item que todo record tem).
    • Uma primary key deve ser unique para cada record, assim ela seleciona exatamente um record (StudentID, não FormClass).
    • Aprenda as partes do SQL: SELECT (quais fields), FROM (qual table), WHERE (a condição), ORDER BY (ordenação, ASC ou DESC).
    • Leia uma query na ordem FROM → WHERE → SELECT → ORDER BY para calcular sua saída.
    • COUNT conta os records correspondentes; SUM soma um campo numérico.
  • 10

    Lógica booleana

    Assistir aula
    Programa
    Os candidatos devem ser capazes de: Notas e orientações
    1 Identifique e use os símbolos padrão para portas lógicas • Veja a seção 4 para símbolos de portas lógicas
    2 Defina e entenda as funções das portas lógicas • Incluindo: – NÃO (NOT) – E (AND) – OU (OR) – NAND – NOR – XOR (EOR) – a saída binária produzida a partir de todas as entradas binárias possíveis • NÃO é uma porta de entrada única • Todas as outras portas são limitadas a duas entradas
    3 (a) Use portas lógicas para criar circuits lógicos dados a partir de: (i) enunciado de problema (ii) expressão lógica (iii) tabela-verdade (b) Complete uma tabela-verdade a partir de: (i) enunciado de problema (ii) expressão lógica (iii) circuito lógico • Os circuitos devem ser desenhados para o enunciado dado, sem simplificação • Os circuitos lógicos serão limitados a um máximo de três entradas e uma saída • Um exemplo de tabela-verdade com três entradas, para completar: A B C Saída | 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) Escreva uma expressão lógica a partir de: (i) enunciado de problema (ii) circuito lógico (iii) tabela-verdade

    Fonte: Programa Cambridge International

    10.1

    O que é lógica booleana?

    Lógica booleana 布尔逻辑 (lógica booleana) opera com valores que são true (verdadeiro) ou false (falso). Em eletrônica, estes são representados como 1 (verdadeiro) e 0 (falso). Uma logic gate 逻辑门 (porta lógica) recebe uma ou mais dessas entradas e produz uma saída, seguindo uma regra fixa.

    Uma tabela-verdade 真值表 lista todos os conjuntos possíveis de entradas e a saída para cada uma. Você a constrói escrevendo todas as combinações de entrada.

    Um circuito eletrônico montado em uma protoboard
    Portas lógicas são construídas a partir de circuitos eletrônicos como este, onde cada porta ativa 1s e 0s
    Vocabulário Treinar
    Inglês Chinês Pinyin
    Boolean logic/ˈbuːlɪən ˈlɒdʒɪk/ 布尔逻辑 bù ěr luó jí
    logic gate/ˈlɒdʒɪk ɡeɪt/ 逻辑门 luó jí mén
    10.2

    As seis portas lógicas

    Um circuito lógico em ação: o semirrotador

    Você precisa conhecer seis portas. NOT tem uma entrada; todas as outras têm duas entradas (A e B).

    Os símbolos das seis portas lógicas — NOT, AND, OR, NAND, NOR e XOR — cada uma com entradas rotuladas e uma saída
    As seis portas lógicas. Um pequeno círculo na saída indica que o resultado é invertido (NOT, NAND, NOR)
    Três pequenos chips pretos de computador com fileiras de pinos metálicos, cada um impresso com um código
    Um chip lógico real: internamente contém portas lógicas como as desta página

    Porta NOT

    A porta NOT 非门 inverte a entrada. A saída é 1 quando a entrada é 0.

    A Saída
    0 1
    1 0

    Porta AND

    A porta AND 与门 dá saída 1 apenas quando ambas as entradas são 1.

    Tabela-verdade da porta AND: apenas 1 AND 1 resulta em 1
    AND outputa 1 apenas quando ambas as entradas são 1
    A B Saída
    0 0 0
    0 1 0
    1 0 0
    1 1 1

    Porta OR

    A porta OR 或门 dá saída 1 quando pelo menos uma entrada é 1.

    Tabela-verdade da porta OR: 0 OR 0 resulta em 0, o resto resulta em 1
    OR outputa 1 quando qualquer entrada é 1
    A B Saída
    0 0 0
    0 1 1
    1 0 1
    1 1 1

    Porta NAND

    A porta NAND 与非门 é AND seguida por NOT. A saída é o oposto de AND.

    A B Saída
    0 0 1
    0 1 1
    1 0 1
    1 1 0

    Porta NOR

    A porta NOR 或非门 é OR seguida por NOT. A saída é o oposto de OR.

    A B Saída
    0 0 1
    0 1 0
    1 0 0
    1 1 0

    Porta XOR

    A porta XOR 异或门 (OR exclusivo) dá saída 1 quando as entradas são diferentes.

    A B Saída
    0 0 0
    0 1 1
    1 0 1
    1 1 0
    Explorar

    As portas lógicas

    Alterne as entradas e escolha uma porta para ver a sua saída — AND, OR, NOT, NAND, NOR, XOR.

    Vocabulário Treinar
    Inglês Chinês Pinyin
    truth table/truːθ ˈteɪbl/ 真值表 zhēn zhí biǎo
    NOT gate/nɒt ɡeɪt/ 非门 fēi mén
    AND gate/ænd ɡeɪt/ 与门 yǔ mén
    OR gate/ɔː ɡeɪt/ 或门 huò mén
    NAND gate/nænd ɡeɪt/ 与非门 yǔ fēi mén
    NOR gate/nɔː ɡeɪt/ 或非门 huò fēi mén
    XOR gate/ˈeksɔː ɡeɪt/ 异或门 yì huò mén
    logic expression/ˈlɒdʒɪk ekˈspreʃn/ 逻辑表达式 luó jí biǎo dá shì
    10.3

    Expressões lógicas

    Uma expressão lógica 逻辑表达式 escreve um circuito usando letras e palavras das portas. A forma usual de escrever as portas:

    Porta Em palavras
    NÃO A NÃO A
    A E B A E B
    A OU B A OU B

    Por exemplo, a expressão (A AND B) OR (NOT C) significa: faça A E B, faça NÃO C, depois OUE os dois resultados juntos.

    A expressão X igual a A E B OU NÃO C desenhada como um circuito: uma porta AND recebe A e B, uma porta NOT recebe C, e uma porta OR combina os dois em saída X
    A expressão X = (A E B) OU (NÃO C) desenhada como um circuito lógico
    Explorar

    Tabelas-verdade

    Construa a tabela da verdade para AND, OR, XOR e NOT — a lógica por trás de cada expressão.

    10.4

    Circuitos lógicos

    Um circuito lógico 逻辑电路 junta portas para executar uma tarefa. A saída de uma porta pode se tornar a entrada de outra. No IGCSE, um circuito tem até três entradas e uma saída.

    Um circuito lógico: uma porta AND recebendo entradas A e B alimenta uma entrada de uma porta OR cuja outra entrada é C, dando saída X
    Construindo o circuito para X = (A E B) OU C — a saída da porta AND alimenta a porta OR

    Você deve ser capaz de transitar entre quatro formas:

    • uma enunciado do problema 问题陈述 (uma descrição em palavras),
    • uma expressão lógica,
    • um circuito lógico,
    • uma tabela-verdade.

    De um enunciado do problema para um circuito

    Leia o enunciado e identifique as condições e as palavras lógicas (e, ou, não). Por exemplo:

    Um alarme (X) soa quando a porta está aberta (A) E o sistema está ligado (B).

    Isso é X = A AND B, então você desenha uma porta AND com entradas A e B.

    Completando uma tabela-verdade a partir de um circuito ou expressão

    Para preencher uma tabela-verdade:

    1. Escreva todas as combinações de entrada. Para três entradas, há 8 linhas (000 até 111).
    2. Calcule a saída de cada porta em ordem, uma coluna por vez.
    3. A última coluna é a saída final.
    Três entradas dão dois vezes dois vezes dois iguais a oito linhas; as oito combinações são listadas contando em binário de 000 a 111, com a última coluna alternando a cada linha
    Três entradas dão oito linhas: cada combinação contada em binário
    A B C A E B (A E B) OU 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

    Adicionar uma coluna intermediária de "cálculo" para cada porta facilita preencher a saída final. Sempre desenhe o circuito exatamente como o enunciado diz, sem simplificá-lo.

    Exemplo resolvido. Complete a tabela-verdade para X = (A AND B) OR (NOT C) na linha A = 1, B = 0, C = 0. Calcule para fora dos parênteses, porta por porta. Primeiro A AND B = 1 E 0 = 0, porque AND precisa que ambas as entradas sejam 1. Depois NOT C = NÃO 0 = 1. Finalmente OUE os dois resultados: 0 OU 1 = 1. Então X = 1. Dê a cada porta intermediária sua própria coluna em vez de tentar fazer toda a expressão de uma vez: com três entradas existem $2^3 = 8$ linhas, e essas colunas intermediárias são onde os pontos do método estão localizados mesmo se a resposta final estiver errada.

    Vocabulário Treinar
    Inglês Chinês Pinyin
    logic circuit/ˈlɒdʒɪk ˈsɜːkɪt/ 逻辑电路 luó jí diàn lù
    problem statement/ˈprɒbləm ˈsteɪtmənt/ 问题陈述 wèn tí chén shù
    10.5

    Dicas de prova

    • Aprenda todas as seis portas e suas tabelas-verdade: NOT, AND, OR, NAND (NÃO E), NOR (NÃO OU), XOR (saída 1 quando as entradas são diferentes).
    • Construa uma tabela-verdade com todas as linhas de entrada (2 entradas → 4 linhas, 3 entradas → 8), contando em binário, e adicione uma coluna de cálculo para cada porta.
    • Converta um enunciado do problema em uma expressão lógica identificando as palavras E / OU / NÃO, depois desenhe-a exatamente como escrita — não simplifique.
    • NAND e NOR dão a saída oposta à AND e OR; um pequeno círculo na saída de uma porta significa que o resultado é invertido.

Entrar ou criar conta

IGCSE, A-Level & AP