Архитектура IBM PC

Машина Тьюринга

Согласно теоретическим исследованиям в области теории алгоритмов машина Тьюринга способна имитировать все другие исполнители (с помощью задания правил перехода), каким-либо образом реализующие процесс пошагового вычисления, в котором каждый шаг вычисления достаточно элементарен.

В состав машины Тьюринга входит бесконечная в обе стороны лента (возможны машины Тьюринга, которые имеют несколько бесконечных лент), разделённая на ячейки, и управляющее устройство, способное находиться в одном из множества состояний. Число возможных состояний управляющего устройства конечно и точно задано.

Управляющее устройство может перемещаться влево и вправо по ленте, читать и записывать в ячейки ленты символы некоторого конечного алфавита. Выделяется особый пустой символ, заполняющий все клетки ленты, кроме тех из них (конечного числа), на которых записаны входные данные.

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

Реализация машины Тьюринга на практике

Сейчас существует огромное количество реализаций различных исполнителей, совместимых с машиной Тьюринга. Аппатной реализацией машины Тьюринга является, например, персональный компьютер. В нашем курсе мы будем рассматривать архитектуру IBM PC (на русский переводится как МежДелМаш Личный Вычислитель), которая сейчас является наиболее популярной в качестве домашних компьютеров, рабочих станций, серверов, ноутбуков и т.д.

Процессор

Основой компьютера данного типа является процессор (CPU, The Central Processing Unit). Физически процессор представляет из себя сверхбольшую интегральную схему (СБИС), с точки зрения программиста процессор — аппаратная реализация управляющего устройства машины Тьюринга. За тридцать лет со времени создания первого IBM PC процессоры изменились до неузнаваемости, однако благодаря стараниям фирмы Intel (а потом и AMD) современные процессоры совместимы с процессором на IBM PC, по этому изучение основ этих процессоров почти идентично.

Первый процессор данной архитектуры — это Intel 8086 (i8086). Его характерной особенностью является 16-разрядная шина данных (передача за один такт 16 бит). Также 16-разрядны основные регистры процессора (регистры — ячейки памяти, работающие на частоте процессора). Над регистрами можно совершать арифметические, логические и другие действия. Если вспомнить машину Тьюринга, то регистры процессора являются своеобразной лентой, правда очень ограниченной (в i8086 14 регистров, при этом регистров общего назначения всего 4).

Регистры общего назначения: AX, BX, CX, DX; каждый регистр имеет в себе два подрегистра: AX=AH:AL, BX=BH:BL и т.д. Подрегистры имеют разрядность 1 байт (8 бит).

Память

TODO