Внутри процессора находятся миллиарды крошечных переключателей. Каждый может быть только включён или выключен. Это всё, что есть у компьютера физически — ни троек, ни семерок, ни…
Английское озвучивание · Английский + китайские субтитры (встроенные)
1.1
Почему компьютеры используют двоичную систему
Компьютер может работать только с двумя состояниями: включено и выключено. Вы записываете их как 1 и 0. Система, использующая только две цифры, называется бинарной (основание 2).
Компьютеры представляют все данные — числа, текст, звук и изображения — в виде двоичных строк из 0 и 1
Любой вид данных — числа, текст, звук и изображения — должен быть преобразован в бинарный код перед тем, как компьютер сможет его использовать. Компьютер обрабатывает этот бинарный код с помощью логических вентилей, а хранит его в регистрах (маленьких, быстрых хранилищах внутри процессора).
Микропроцессор содержит миллионы крошечных транзисторов, каждый из которых является переключателем, находящимся во включённом (1) или выключенном (0) состоянии — это физическая основа бинарного кода
1 Понимать, как и почему компьютеры используют двоичную систему для представления всех видов данных
• Любая форма данных должна быть преобразована в двоичный код для обработки компьютером • Данные обрабатываются с помощью логических вентилей и хранятся в регистрах
2 (a) Понимать системы счисления: десятичную, двоичную и шестнадцатеричную (b) Выполнять перевод между (i) положительными десятичными и положительными двоичными числами (ii) положительными десятичными и положительными шестнадцатеричными числами (iii) положительными шестнадцатеричными и положительными двоичными числами
• Десятичная система — это система счисления по основанию 10 • Двоичная система — это система счисления по основанию 2 • Шестнадцатеричная система — это система счисления по основанию 16 • Используются только целые числа • Перевод в обоих направлениях, например, из десятичной в двоичную или из двоичной в десятичную • Максимальная длина двоичного числа составляет 16 бит
3 Понять, как и почему шестнадцатеричная система используется как выгодный метод представления данных
• Должны быть указаны области информатики, где применяется шестнадцатеричная система • Шестнадцатеричная система понятнее людям, чем двоичная, поскольку является более кратким представлением двоичного кода
4 (a) Сложить два положительных двоичных целых числа с 8 битами (b) Понять концепцию переполнения и причины его возникновения при сложении двоичных чисел
• Ошибка переполнения возникнет, если значение превышает 255 в регистре из 8 бит • У компьютера или устройства есть заранее установленный предел, который он может представлять или хранить, например, для 16-битной системы • Ошибка переполнения возникает, когда необходимо вернуть значение за пределами этого лимита
5 Выполнить логический двоичный сдвиг положительного целого двоичного числа с 8 битами и понять влияние этого действия на число
• Выполнять логические сдвиги влево • Выполнять логические сдвиги вправо • Выполнять несколько сдвигов подряд • Биты, сдвигаемые с конца регистра, теряются, а на противоположном конце регистра сдвигаются нули • Положительное двоичное целое число умножается или делится в зависимости от выполненного сдвига • Старший (наиболее значащий) или младший (наименее значащий) бит(ы) теряются
6 Использовать систему дополнительного кода для представления положительных и отрицательных целых двоичных чисел с 8 битами
• Преобразовать положительное двоичное или десятичное целое число в补充ный код с 8 битами и обратно • Преобразовать отрицательное двоичное или десятичное целое число в补充ный код с 8 битами и обратно
Источник: Программа Cambridge International
Подсчет в двоичной системе: от 0 до 15
Система счисления — это способ записи чисел с использованием фиксированного набора цифр. Вам нужно знать три из них.
Система
Основание
Используемые цифры
Десятичная
10
0–9
Двоичная
2
0 и 1
Шестнадцатеричная
16
0–9 затем A–F
десятичная система — обычная система счёта (также называемая десятичной).
бинарная использует только 0 и 1.
шестнадцатеричная (hex) использует шестнадцать цифр: 0–9, затем A, B, C, D, E, F обозначают 10, 11, 12, 13, 14, 15.
Основание показывает, сколько различных цифр использует система.
Разрядное значение
Каждый разряд в числе имеет своё разрядное значение. В бинарной системе разрядные значения удваиваются справа налево. Для 8-битного числа они следующие:
128 64 32 16 8 4 2 1
Таблица разрядов 8-битного числа: единицы 1 расположены под значениями, сумма которых равна 150
Один бит — это одна цифра 0 или 1. Восемь бит составляют один байт. Четыре бита (половина байта) называются нибблом.
Перевод между системами счисления
Десятичная → бинарная. Запишите разрядные значения. Поставьте 1 под каждым значением, которое необходимо, чтобы в сумме получить ваше число; под остальные поставьте 0.
Каждая шестнадцатеричная цифра соответствует своей собственной группе из 4 бит — F08 = 1111 0000 1000
Бинарная → шестнадцатеричная. Сгруппируйте биты в нибблы по 4, начиная справа. Преобразуйте каждый ниббл в одну шестнадцатеричную цифру.
Десятичная → шестнадцатеричная. Проще всего сначала перевести в бинарную систему, а затем из бинарной в шестнадцатеричную.
Эта таблица помогает запомнить буквы в шестнадцатеричной системе:
Десятичная
Двоичная
Шестн.
10
1010
A
11
1011
B
12
1100
C
13
1101
D
14
1110
E
15
1111
F
Вопросы Cambridge используют бинарные числа длиной до 16 бит.
Разобранный пример. Переведите десятичное 100 в 8-битный бинарный код, а затем в шестнадцатеричный.
$100 = 64 + 32 + 4$, поэтому бинарный код выглядит так: 01100100. Разбивая на нибблы, получаем 01100100$= 6$ и $4$, следовательно шестнадцатеричное число равно 64.
Почему используется шестнадцатеричная система
Шестнадцатеричная запись короче бинарной и легче для чтения и написания человеком. Одна шестнадцатеричная цифра заменяет 4 бинарных, что снижает вероятность ошибок. Значение при этом не меняется — шестнадцатеричная система просто представляет тот же бинарный код более кратко.
Учёные-компьютерщики используют шестнадцатеричную систему для:
MAC-адресов и адресов IPv6
цветовых кодов в HTML (например, #FF0000 означает красный)
адресов памяти и кодов ошибок
отображения содержимого памяти (так называемый «дамп памяти»)
Исследовать
Двоичная, десятичная и шестнадцатеричная системы
Введите число и увидьте его в двоичной, десятичной и шестнадцатеричной системах — и как разряды его формируют.
8-битный регистр может хранить только десятичные значения от 0 до 255. Если результат сложения превышает 255, ответ требует 9-го бита. Регистр не может вместить этот дополнительный бит, поэтому он теряется. Это называется переполнением (ошибка переполнения). Оно происходит, когда значение выходит за пределы диапазона, который может хранить регистр.
Пример: 11001000 (200) $+$01001000 (72) $= 272$. В двоичной системе это 1 00010000, что требует 9 бит. Старший 1 не поместится в 8 бит, поэтому сохраненный ответ неверен.
Сложение 200 и 72 требует 9 бит, но 8-битный регистр отбрасывает девятый, поэтому ответ неверен
Логический бинарный сдвиг перемещает все биты влево или вправо на определенное количество позиций.
Биты, которые смещаются за пределы регистра, теряются.
Нули добавляются в освободившийся конец.
Сдвиг влево умножает число на 2 для каждой позиции сдвига. Сдвиг вправо делит его на 2 для каждой позиции; правые биты (младшие значащие биты) теряются.
Пример: сдвиг влево на 00110101 (53) на 2 позиций.
Сдвиг влево на 2: каждый бит перемещается на 2 позиции влево, старшие биты теряются, а справа заполняются нулями
Результат — 11010100 (212), что равно $53 \times 4$. Два старших бита были потеряны, а справа добавились два нуля. Если из конца «выталкивается» 1, эта информация теряется навсегда.
1.1
Дополнительный код
До сих пор рассматривались только положительные числа. Дополнительный код позволяет 8-битному регистру хранить также и отрицательные числа.
В дополнительном коде левый бит (самый старший значащий бит, или MSB) имеет отрицательное значение разряда:
-128 64 32 16 8 4 2 1
Если MSB равен 0, число положительное.
Если MSB равен 1, число отрицательное.
Чтобы сделать положительное число отрицательным: запишите положительное двоичное число, инвертируйте все биты (0↔1), затем прибавьте 1.
Пример: получить $-40$.
$+40$ = 00101000
инверсия битов = 11010111
прибавление 1 = 11011000
Таким образом, $-40$ = 11011000. Проверка путем сложения значений разрядов: $-128 + 64 + 16 + 8 = -40$.
Старший значащий бит равен −128, поэтому 11011000 = −128 + 64 + 16 + 8 = −40
Чтобы прочитать отрицательное число в дополнительном коде, просто сложите значения разрядов (MSB учитывается как $-128$). Диапазон 8-битного числа в дополнительном коде составляет от $-128$ до $+127$.
1.2
Представление текста
Программа
Кандидаты должны уметь:
Примечания и рекомендации
1 Понять, как и почему компьютер представляет текст, и использовать наборы символов, включая американский стандартный код обмена информацией (ASCII) и Unicode
• Текст преобразуется в двоичный код для обработки компьютером • Unicode позволяет представить больший диапазон символов и знаков, чем ASCII, включая разные языки и эмодзи • Unicode требует большего количества бит на символ, чем ASCII
2 Понять, как и почему компьютер представляет звук, включая влияние частоты дискретизации и глубины дискретизации
• Звуковая волна подвергается дискретизации для преобразования звука в двоичный код, который обрабатывается компьютером • Частота дискретизации — это количество выборок, сделанных за секунду • Глубина дискретизации — это количество бит на один образец • Точность записи и размер файла увеличиваются при повышении частоты и глубины дискретизации
3 Понимать, как и почему компьютер представляет изображение, включая влияние разрешения и глубины цвета
• Изображение представляет собой последовательность пикселей, преобразованных в двоичный код, который обрабатывается компьютером • Разрешение — это количество пикселей в изображении • Глубина цвета — это количество бит, используемых для представления каждого цвета • Размер файла и качество изображения увеличиваются по мере роста разрешения и глубины цвета
Источник: Программа Cambridge International
Компьютеры хранят текст, присваивая каждому символу номер, а затем сохраняя этот номер в двоичном виде. Совокупность символов, доступных компьютеру, вместе с их номерами, называется набором символов.
ASCII использует 7 бит на символ, поэтому содержит 128 различных символов. Этого достаточно для английских букв, цифр и распространенных знаков препинания.
Unicode использует больше бит на символ. Он может представлять значительно больше символов — многие языки, а также знаки и эмодзи.
Поскольку набор Unicode содержит больше символов, ему требуется больше бит на символ, чем ASCII, поэтому тот же текст занимает больше места для хранения.
ASCII использует 7 бит для 128 символов; Unicode использует больше бит для гораздо большего количества символов, но требует больше памяти
Звуковая волна плавная и постоянно изменяется. Для её хранения компьютер измеряет высоту волны через равные промежутки времени. Этот процесс называется дискретизацией, а каждое измерение — это выборка (сэмпл).
Дискретизация фиксирует высоту (амплитуду) волны в равные моменты времени
частота дискретизации — это количество выборок, сделанных каждую секунду (измеряется в Гц).
глубина дискретизации — это количество бит, используемых для каждой выборки. Высота волны в точке выборки называется её амплитудой.
Более высокая частота и более глубокая дискретизация обеспечивают более точную запись, но приводят к увеличению размера файла.
Исследовать
Представление звука
y = a sin(bt + c)
Звук — это волна; дискретизация фиксирует его высоту множество раз в секунду.
• Включая: – бит – ниббл – байт – кибибайт (KiB) – мебибайт (MiB) – гибибайт (GiB) – тебибайт (TiB) – пебибайт (PiB) – эксибайт (EiB) • Количество единиц предыдущей размерности в размере хранилища данных, например: – 8 бит в байте – 1024 мебибайта в гибибайте
2 Вычислять размер файла изображения и звукового файла, используя предоставленные данные
• Ответы должны быть даны в единицах измерения, указанных в задании. Расчеты должны использовать значение 1024, а не 1000 • Предоставленная информация может включать: – разрешение и глубину цвета изображения – частоту дискретизации, глубину и продолжительность звуковой дорожки
3 Понимать назначение и необходимость сжатия данных
• Сжатие существует для уменьшения размера файла • Последствия этого процесса, например: – требуется меньшая пропускная способность – требуется меньше места для хранения – сокращается время передачи
4 Понимать, как файлы сжимаются с использованием методов потерянного и без потерь
• Потерянное сжатие уменьшает размер файла за счет необратимого удаления данных, например, снижения разрешения или глубины цвета, снижения частоты дискретизации или глубины • Без потерь сжатие уменьшает размер файла без необратимой потери данных, например, кодирование длин серий (RLE)
Источник: Программа Cambridge International
Объем хранилища данных измеряется в следующих единицах. Ниббл равен 4 битам, байт — 8 битам; начиная с кибибайта, каждая следующая единица в 1024 раза больше предыдущей (так как $1024 = 2^{10}$ подходит для двоичной системы).
Единица
Равно
бит
одна единичная 0 или 1
ниббл
4 бита
байт
8 бит
кибибайт (KiB)
1024 байта
мебибайт (MiB)
1024 KiB
гибибайт (GiB)
1024 MiB
тебибайт (TiB)
1024 GiB
пебибайт (PiB)
1024 TiB
эксибайт (EiB)
1024 PiB
Жесткие диски: хранение измеряется в байтах — для определения размера файла изображения нужны ширина × высота × глубина цвета
Размер файла звука (в битах) $=$ частота дискретизации $\times$ глубина дискретизации $\times$ продолжительность в секундах.
Всегда делите на 1024 (не на 1000), чтобы перевести в KiB, MiB и так далее. Дайте ответ в единице, указанной в вопросе.
Разобранный пример. Звук записан в течение 30 секунд при частоте дискретизации 8,000 Гц и разрешении выборки 16 бит. Найдите размер файла в кибибайтах (КиБ).
требует меньшей пропускной способности (количества данных, которое может передать соединение),
передается быстрее (меньшее время передачи).
Существует два типа.
Сжатие без потерь
Сжатие без потерь уменьшает размер файла с полным сохранением данных. Исходный файл можно восстановить точно.
Один из методов — кодирование длин серий (RLE). Оно заменяет последовательность повторяющихся значений одной копией этого значения и счетчиком, указывающим, сколько раз оно повторяется. Например, WWWWWWWW (8 белых) сохраняется как "8 W". Это работает хорошо, когда данные содержат много повторов.
Кодирование длин серий хранит каждую серию один раз как количество и значение
Сжатие с потерями
Сжатие с потерями делает файл значительно меньше за счёт постоянного удаления некоторых данных. Удалённые данные невозможно восстановить. Например:
снижение разрешения или глубины цвета изображения;
снижение частоты дискретизации или разрешения звука.
Используйте сжатие без потерь, когда необходимо сохранить каждую деталь (текстовые и программные файлы). Используйте сжатие с потерями для фотографий, музыки и видео, где небольшая потеря качества оправдана получением гораздо меньшего файла.
Исследовать
Кодирование длин серий
Наблюдайте, как повторяющиеся символы сжимаются в подсчет — простая без потерь компрессия.
1.3
Советы для экзамена
Преобразование десятичной системы → двоичной: вычитайте значения разрядов (128, 64, 32 …); двоичная → десятичная: складывайте значения разрядов, содержащих 1.
Для преобразования в шестнадцатеричную систему сгруппируйте двоичное число на нибблы по 4 бита справа; каждый ниббл соответствует ровно одной цифре шестнадцатеричного числа.
Переполнение происходит, когда результат требует больше бит, чем вмещает регистр (8-битный регистр хранит только 0–255), поэтому лишний бит теряется.
Размер файла в битах: для изображения — ширина × высота × глубина цвета; для звука — частота дискретизации × разрешение × секунды. Разделите на 8 для получения байтов, затем на 1024 для каждой следующей единицы измерения.
Сжатие без потерь сохраняет каждый бит (текст; кодирование длин серий); сжатие с потерями постоянно удаляет данные (фотографии, музыка) для создания значительно меньшего файла.
Интерактивные уроки по этой теме
Пройдите его шаг за шагом с упражнениями мгновенной проверки.