Структура процессора: Структура процессора. — it-black.ru

Структура процессора. — it-black.ru

Структура процессора. — it-black.ru Перейти к содержимому

Чтобы нормально знать ассемблер, надо знать, что такое процессор. Именно поэтому я решил написать данную статью. Мы рассмотрим что такое процессор и его структуру.

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

Вот упрощённая структура процессора:




Основные элементы процессора:


Самое главное в процессоре это регистры. Регистры состоят из триггеров. Триггер может иметь 2 значения 0 или 1. Регистры бывают 8, 16, 32, 64 разрядные, понятно, что если 8 разрядов, то в регистре 8 триггеров.

Регистры – это специальные ячейки памяти, физически расположенные внутри процессора.

В отличие от ОЗУ, где для обращения к данным требуется использовать шину адреса, к регистрам процессор может обращаться напрямую. Это существенно ускорят работу с данными.

Основные регистры процессора:



Регистры EAX, EBX, ECX, EDX – это регистры общего назначения. Они имеют определённое назначение, однако в них можно хранить любую информацию.

Регистры EBP, ESP, ESI, EDI – это также регистры общего назначения. Они имеют уже более конкретное назначение. В них также можно хранить пользовательские данные, но делать это нужно уже более осторожно, чтобы не получить «неожиданный» результат.

Регистр флагов — отражает текущее состояние процессора.

Cегментные регистры нужны для доступа к памяти в сегментах кодов, данных, стека и дополнительного сегмента, соответственно. Каждый из них используется по своему назначению, но их использование может изменяться в соответствии с требованиями программы.

  • АЛУ — арифметико-логическое устройство выполняет арифметические операции, такие как сложение, вычитание, а также логические операции.
  • БУ — блок управления определяет последовательность микрокоманд, выполняемых при обработке машинных кодов (команд).
  • ТГ — тактовый генератор, или генератор тактовых импульсов, задаёт рабочую частоту процессора. С помощью тактовых импульсов выполняется синхронизация для внутренних команд процессора и остальных устройств. Тактовый генератор вырабатывает (генерирует) прямоугольные импульсы, которые следуют с определённой частотой.

В теории электронно-вычислительных машин различают два понятия:

1. Машинный такт, он соответствует одному периоду импульсов тактового генератора и является основной единицей измерения времени выполнения команд процессором.

2. Машинный цикл, он состоит из нескольких машинных тактов. Машинный цикл – это время, необходимое для выполнения одной команды.

Машинный цикл может отличаться для разных команд. Для простых команд может потребоваться всего 1-2 машинных такта. В то время как для сложных команд, таких как умножение, может потребоваться до 50 машинных тактов и более. Это очень важный момент. Когда вы будете писать реальные программы, которые очень критичны к быстродействию, следует помнить о том, что разные команды требуют соответствующего времени работы процессора. То есть одни и те же действия можно выполнить, например, за 100 машинных тактов, а можно и за 20.

Facebook

Twitter

  • No Comments

Группа в VK

Обнаружили опечатку?

Сообщите нам об этом, выделите текст с ошибкой и нажмите Ctrl+Enter, будем очень признательны!

Свежие статьи

Облако меток

Похожие статьи

Команды работы с битами.

Работать с отдельными битами операндов можно, используя логические операции и сдвиги. Также в системе команд x86 существуют специальные команды для работы с битами: это команды

Основы создания макросов в Assembler.

Макросы — это шаблоны для генерации кода. Один раз создав макрос, можно использовать его во многих местах в коде программы. Макросы делают процесс программирования на

Синтаксис объявления меток.

Метка в ассемблере – это символьное имя, обозначающее ячейку памяти, которая содержит некоторую команду. Метка может содержать следующие символы: Буквы (от A до Z и

Локальные переменные.

Локальные переменные в Assembler используются для хранения промежуточных результатов во время выполнения процедуры. В отличие от глобальных, эти переменные являются временными и создаются при запуске

Instagram Vk Youtube Telegram Odnoklassniki

Полезно знать

Рубрики

Авторы

Структура процессора

Главная / Ассемблер / Для чайников / Введение в Ассемблер /

Упрощённая структура процессора показана на рис.

2.1.

Рис. 2.1. Структура процессора.

Основные элементы процессора:

  • Регистры
  • АЛУ – арифметико-логическое устройство
  • БУ – блок управления
  • ТГ – тактовый генератор

Регистры – это специальные ячейки памяти, физически расположенные внутри процессора. В отличие от ОЗУ, где для обращения к данным требуется использовать шину адреса, к регистрам процессор может обращаться напрямую. Это существенно ускорят работу с данными.

Арифметико-логическое устройство выполняет арифметические операции, такие как сложение, вычитание, а также логические операции.

Блок управления определяет последовательность микрокоманд, выполняемых при обработке машинных кодов (команд).

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

В теории электронно-вычислительных машин различают два понятия: машинный такт и машинный цикл.

Машинный такт соответствует одному периоду импульсов тактового генератора и является основной единицей измерения времени выполнения команд процессором.

Машинный цикл состоит из нескольких машинных тактов. Машинный цикл – это время, необходимое для выполнения одной команды.

Машинный цикл может отличаться для разных команд. Для простых команд может потребоваться всего 1-2 машинных такта. В то время как для сложных команд, таких как умножение, может потребоваться до 50 машинных тактов и более. Это очень важный момент. Когда вы будете писать реальные программы, которые очень критичны к быстродействию, следует помнить о том, что разные команды требуют соответствующего времени работы процессора. То есть одни и те же действия можно выполнить, например, за 100 машинных тактов, а можно и за 20. Это зависит от опыта и квалификации программиста, а также от конкретных задач.

Доработка программы таким образом, чтобы она выполнялась максимально быстро (то есть для её выполнения требовалось как можно меньше машинных тактов) называется оптимизация по быстродействию

. В таких случаях часто приходится чем-то жертвовать, например, усложнять программу или увеличивать её размер. Есть и другие типы оптимизации, например, оптимизация по размеру. В этом случае обычно жертвуют быстродействием, чтобы получить программу с минимальным размером исполняемого файла. Выбор оптимизации зависит от конкретной задачи. Вопросы оптимизации будут рассмотрены в соответствующем разделе.


Higher Computing Revision – Структура процессора

Спецификация содержания курса

Структура процессора

Модель фон Неймана

Подробный обзор процессора

Что делает блок управления?

Разница между инструкциями и операциями

Арифметико-логическое устройство (АЛУ)

Регистры

Что может храниться в регистре?

Использование регистра при выполнении арифметических операций

Прочие регистры

Автобусы

Адрестная шина

Bus Bus

Выполнить цикл

Чтение из памяти (чтение памяти)

Написание в память (запись памяти)

Урок видео

Спецификация курса

  • Опишите. концепция цикла выборка-выполнение.

Структура процессора

Модель фон Неймана

Архитектура фон Неймана первоначально была описана в статье Джона фон Неймана в 1945 . В нем описывался компьютер, состоящий из 4 основных частей:

  • CA — Центральный арифметико-логический блок
  • CC — Центральный блок управления
  • Память
  • Каналы ввода и вывода

Фон Нейман предложил хранить инструкции в двоичном виде в памяти. . Это называется концепцией хранимой программы . Существуют и другие архитектуры, в которых данные и инструкции обрабатываются отдельно, например гарвардская архитектура. Архитектура фон Неймана может быть представлена ​​следующей диаграммой.

Архитектура фон Неймана

5 частей диаграммы можно разбить следующим образом:

Устройства ввода

Это устройства, которые вводят новую информацию в компьютер, такие как мыши, клавиатуры и т. д. Подробнее об этом позже .

Устройства вывода

Это устройства, которые получают информацию от компьютера, например, мониторы, принтеры и т. д.

Резервное хранилище

как жесткие диски и USB-накопители.

Память

Память можно разделить на два типа: RAM и ROM.

Процессор или ЦП (центральный процессор)

Это процессор, это часть компьютера, которая фактически выполняет задачи, требуемые системой.

Более пристальный взгляд на процессор

Процессор представляет собой сложное оборудование, которое можно разбить на несколько основных частей.

Они показаны ниже:

  • Блок управления отвечает за синхронизацию процессора и выполнение инструкций. Это гарантирует, что они выполняются в правильном порядке.
  • ALU выполняет арифметические операции и булевы логические сравнения (такие как И, ИЛИ и т. д.)
  • Регистры представляют собой небольшие временные хранилища информации внутри процессора. Они используются для таких вещей, как хранение результатов вычислений, максимум они будут хранить несколько байтов.

Однако у процессора есть и другие важные части, эти части показаны ниже:

Структура шины. Шина — это набор проводов, по которым может передаваться сигнал.

Что делает блок управления?

Блок управления не передает никаких данных так, как это делает шина данных, но имеет ряд линий, которые выполняют определенные задачи, они подробно описаны ниже.

Часы — Генерирует постоянный импульс (измеряется в МГц/ГГц). На ядро ​​будет выполняться одна операция за импульс.

Сброс — Возвращает систему/ЦП/процессор в исходное состояние, сохраняет содержимое и очищает регистры. Это не то же самое, что сброс питания.

Прерывание — уведомляет процессор о внешнем событии, таком как ввод-вывод с устройства. Этот тип прерывания можно игнорировать.

Немаскируемое прерывание (NMI) — это прерывание, которое НЕ МОЖЕТ быть проигнорировано, например, уведомление о сбое питания.

Разница между инструкциями и операциями

Операция представляет собой единую команду , такую ​​как значение, передаваемое в регистр, одна инструкция (например, сложение двух чисел вместе) может потребовать более одной операции (строки ассемблерного кода).

Арифметико-логическое устройство (ALU)

Основной функцией ALU является арифметика. Например, сложение, умножение и т. д.

Что касается логики, он будет выполнять такие операции, как: Логическое И/ИЛИ, т. е. логические операторы сравнения, используемые в программировании. Одним из конкретных регистров, используемых АЛУ, является Аккумулятор — он содержит результаты сложений. В документации по процессорам Intel это называется EAX.

Регистры

Регистры представляют собой небольшие временные хранилища информации, они встроены в ЦП и доступны почти сразу. Современные процессоры Intel будут иметь регистры до 64 бит.

Что может храниться в реестре?

Регистр может содержать только 3 типа информации:

  • Данные
  • Инструкции
  • Адреса

Использование регистра при выполнении арифметических операций

Если бы мы складывали два числа вместе, используя строку ассемблерного кода, как показано ниже:

  • добавить ax,bx

Регистр ax содержал бы одно значение с 1 bx второе значение.

Прочие регистры

Хотя некоторые из них не входят в рамки курса, некоторые из них перечислены ниже:

  • Счетчик программ (ПК) : Содержит в памяти адрес следующей инструкции в программе. Будет передан в MAR.
  • Регистр инструкций (IR) : Содержит текущую выполняемую инструкцию. При необходимости будет передан в регистр данных памяти (MDR)
  • . Регистр адреса памяти (MAR) : он используется для хранения значения, представляющего адрес в памяти, к которому процессор должен получить доступ. Подключен к адресной шине.
  • Регистр данных памяти (MDR) : Используется для хранения данных, считываемых из памяти или записываемых в память. Подключен к шине данных

Каждая Bus играет особую роль, мы рассмотрели автобусную шину/блок управления, но у нас есть два слева:

  • Adder Bus
  • Data Bus

Adder Bus

ADDECT ADDECT ADDED ADDED ARDED ADDED ADDED ARDED ADDED ADDED ADDED ADDED ADDED ADDED ADDED ADDED ADDED ADDED ADDED ARDED ADDED ARDED ADDED ARDED ADDED ARDED ARDED ADDED ARDED ADDED ADDED ADDECT имеет только одну роль. Он просто содержит адрес места в памяти, к которому нужно получить доступ. Это только когда-либо точки памяти TO . Он не хранит никаких данных и никогда не передает данные обратно в ЦП.

Шина данных

Шина данных используется для передачи данных к процессору и от него. Он будет содержать двоичное слово. Длина слова — это термин, обозначающий максимальную длину двоичного числа, которое процессор может обработать за одну операцию. Как правило, чем больше длина слова, тем эффективнее процессор, т.е. тем больше работы он может выполнять в каждой операции. Шина данных является двунаправленной, она может передавать данные ОТ и К ЦП/памяти.

Выборка Выполнение цикла

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

Это называется циклом выборка-выполнение . Его можно представить следующими шагами:

  1. Адрес памяти следующей команды помещается на адресную шину.
  2. Строка чтения активирована.
  3. Инструкция передается процессору по шине данных.
  4. Инструкция декодирована и выполнена.

Чтение из памяти (Memory Read)

  1. Адресная шина настраивается с адресом, с которого будет производиться чтение.
  2. Линия Чтение (управление) активирована.
  3. Шина данных настроена на чтение данных.
  4. Данные на шине данных помещаются в регистры процессора.
  5. Расшифруйте и затем выполните.

Запись в память (Memory Write)

  1. Адресная шина настроена на адрес для записи.
  2. Шина данных настроена на запись данных.
  3. Линия записи (управления) активирована.
  4. Данные на шине данных помещаются в ячейку памяти, указанную адресной шиной.

Урок Видео

Компьютер Structure. mp4

Далее - Память

Архитектура ЦП

Что такое ЦП? В основе компьютера находится блок, называемый центральным процессором (ЦП). Вы, наверное, слышали о процессорах раньше. Они производятся такими компаниями, как Intel, AMD, Fujitsu, Zhaoxin и Qualcomm, и имеют связанные с ними технические данные, такие как Quad Core, 3,2 ГГц с 6 МБ кэш-памяти. Процессор можно разделить на три основные части: арифметико-логическое устройство (ALU), блок управления (CU) и то, что известно как регистры. Вы посмотрите на них в первую очередь.

Опираясь на то, как можно использовать логические вентили для выполнения вычислений и хранения данных, вы увидите, как все это сочетается друг с другом для создания компьютера.

Что такое процессор?

В основе компьютера лежит блок, называемый центральным процессором (ЦП).


CC BY-SA 2.0, ссылка

Возможно, вы уже слышали о процессорах. Они производятся такими компаниями, как Intel, AMD, Fujitsu, Zhaoxin и Qualcomm, и имеют связанные с ними технические данные, такие как Quad Core, 3,2 ГГц с 6 МБ кэш-памяти.

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

Основные части ЦП

1. Регистры

Регистры — это части ЦП, которые могут хранить данные. Они немного похожи на оперативную память, но вместо ячеек памяти на основе конденсаторов ячейки памяти состоят только из логических элементов. Регистры не могут хранить столько данных, сколько ОЗУ, но они работают значительно быстрее.

В ЦП имеется пять различных типов регистров. В приведенной ниже таблице приведены некоторые основные сведения, и в следующем разделе вы увидите, как работают эти регистры.

Аккумулятор АС Сохраняет результаты вычислений
Регистр инструкций ИК Сохраняет в ОЗУ адрес инструкции для обработки
Регистр адреса памяти 9 МАРТА0365
Сохраняет в ОЗУ адрес обрабатываемых данных
Регистр данных памяти МДР Сохраняет обрабатываемые данные
Счетчик программ ПК Сохраняет в ОЗУ адрес следующей инструкции

2.

Арифметико-логическое устройство


CC BY-SA 3.0, ссылка

АЛУ является ядром ЦП. Он состоит из всех тех логических схем, о которых вы узнали за последние три недели.

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

3. Блок управления

Блок управления расшифровывает значение каждой инструкции и затем может управлять работой других компонентов. Таким образом, когда блок управления получает команду, которая представляет собой просто двоичное число, он сигнализирует о том, что должны делать АЛУ и память. Может быть, инструкция состоит в том, чтобы сложить два числа вместе, или может быть, что инструкция состоит в том, чтобы сохранить число в ОЗУ.

Блок управления также содержит часы. Это крошечный колеблющийся кристалл, который управляет скоростью, с которой процессор выполняет вычисления.

Память

В ОЗУ хранятся как инструкции, которые компьютер должен выполнять, так и данные, на основе которых они выполняются. Идея хранения данных и инструкций в одной и той же памяти лежит в основе так называемого компьютера с хранимой программой. При чтении из ОЗУ или записи в ОЗУ необходимы два регистра: один для хранения адреса в ОЗУ, который считывается или записывается, и другой регистр для хранения самих данных.

Шины

Все эти компоненты соединены пучками проводов, которые в совокупности называются шинами. Итак, есть шина для передачи данных, другая для адресов и еще одна для инструкций.

Ввод и вывод

Кроме того, компьютер обычно имеет некоторые устройства ввода и вывода, которые могут получать внешние данные и затем выводить результаты вычислений. Это может быть что-то простое, например подключение для передачи данных, или что-то более сложное, например, клавиатура и монитор.

Оставить комментарий

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *