awesome-everything EN
↑ Обратно к восхождению

Базовый CS с нуля

Процессор: тест с множественным выбором

Суть Тест с множественным выбором по всему юниту о процессоре: инструкции, цикл fetch-decode-execute, счётчик команд, регистры, машинный код и идея хранимой программы.
Высота — путь к senior
НольJuniorMiddleSenior
Ты на middle-высоте — в небе
◷ 13 min

Шесть вопросов, проходящих через весь юнит. Ни один не требует пересказать определение — каждый заставляет собрать инструкцию, цикл, регистры и байты в памяти в одну работающую машину.

Цель

Убедитесь, что вы можете связать части, которые уроки строили по отдельности: инструкция — это операция плюс операнды, CPU выполняет их в цикле fetch-decode-execute под управлением счётчика команд (program counter), регистры хранят рабочие значения, а вся программа — это просто байты машинного кода в памяти.

Викторина

Программа складывает миллион чисел в цикле. Почему CPU держит текущую сумму в регистре, а не в основной памяти?

Викторина

CPU только что выполнил обычную инструкцию ADD (не переход). Что происходит со счётчиком команд (program counter) и почему?

Викторина

Джуниор говорит: 'Мой код написан на Python, значит, CPU выполняет Python напрямую.' Что здесь неверно?

Викторина

На шаге декодирования (Decode) цикла какая часть CPU выполняет работу и что она производит?

Викторина

Две ячейки памяти по адресам 100 и 101 хранят байты, кодирующие инструкцию. Те же значения байтов есть и по адресам 200 и 201, где программа хранит данные. Что делает одну пару инструкцией, а другую — данными?

Викторина

Программа, скомпилированная для Mac на Apple Silicon (ARM), не запустится как есть на ноутбуке Intel (x86-64), хотя оба процессора 64-битные. Почему?

Итог

Сквозная нить юнита — одна машина. Инструкция — это операция плюс операнды; CPU выполняет инструкции в цикле fetch-decode-execute, где счётчик команд называет следующую и сдвигается на размер инструкции, если только переход не переопределит это. Регистры хранят рабочие значения на скорости CPU, потому что RAM в 100-300 раз медленнее. Decode — это устройство управления, превращающее опкод в сигналы управления. А вся программа — это просто байты машинного кода в общей памяти, инструкции лишь потому, что счётчик команд проходит по ним. Набор инструкций — это контракт, решающий, какой чип может выполнить какие байты.

Продолжить восхождение ↑Процессор: тест на свободное припоминание
хоткеи развернуть
поиск
K
пред. пьеса
k
след. пьеса
j
тиры
t
это меню
?
sources3
expand
  1. 01
  2. 02
  3. 03

Trademarks belong to their respective owners. Editorial reference only.