(812) 703-02-02

Санкт‑Петербург, ул. Обручевых, д. 1

470823481
Нодира
498526497
Анна
364978079
Юлия

Закрыть

Общая информация
О направлении Паспорт направления Новости Преподавательский состав Контакты Вопросы и ответы Наши выпускники
Поступающим
Рынок труда Концепция направления Сетевая академия Cisco Программа обучения Правила приема Учебные материалы Форма и место проведения занятий Документы об образовании Дни открытых дверей Стоимость обучения
Обучающимся
Поиск слушателя Расписание занятий Списки групп и оценки Учебный план Студентам Дипломникам Техническая информация Учебные материалы Cisco Microsoft DreamSpark Форум
Печать

Организация ЭВМ и систем


Преподаватели

Аннотация

Курс Организация ЭВМ построен на фундаментальном утверждении живого классика компьютерной науки Эндрю Танненбаума о том, что: Компьютер можно рассматривать как иерархию структурных уровней организации.

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

На верхнем уровне иерархии находятся проблемно ориентированные программные средства, такие, как Mathcad (для решения математических задач), Visual Basic для офисных приложений, уровнем ниже расположены процедурно ориентированные языки (Си/Си++, Паскаль)..., самый нижний уровень это уровень физической реализации цифровых логических элементов.

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

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

Предлагаемый курс можно условно разделить на шесть частей:

  1. Вводная часть, предназначенная для знакомства с уровнем физической реализации и с некоторыми теоретическими основами, используемыми для описания нижних уровней организации:

    • принцип цифрового представления данных в технических устройствах;
    • основы алгебры логики и ее использование для описания функционирования цифровых устройств;
    • системы счисления;
    • некоторые основные понятия цифровой схемотехники: комбинационные логические устройства и устройства с памятью (триггеры, регистры, счетчики).
  2. Простейшая структура ЦВМ с хранимой программой, состав, назначение и свойства основных частей, принцип программного управления.
  3. Основные разновидности данных, обрабатываемых в ЦВМ (числа , тексты, изображения), их свойства, основные действия с ними.
  4. Структура вычислительного ядра ЦВМ, назначение и свойства элементов процессора (регистровая модель процессора для программиста), организация устройств памяти (способы адресации, их особенности и использование), состав типовой системы команд процессора.
  5. Аппаратная поддержка в процессорах действий по управлению вычислительным процессом (ветвления, циклические конструкции, подпрограммы, синхронизация с внешними событиями прерывания, реакции на исключительные ситуации).
  6. Многоуровневая организация подсистемы памяти в ЦВМ: кэш-память, механизм виртуальной памяти, понятие и использование адресных пространств, механизмы трансляции адресов.

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

  • собщения и сигналы;
  • представление информации в цифровых устройствах;
  • флгебра логики;
  • многоуровневая организация ЦВМ;
  • структурные способы повышения производительности ЦВМ;
  • виды данных и типовые операции с ними.

(Часть из перечисленных вопросов входит в стандартную программу курса Информатика.)

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

Требования к начальному уровню знаний

Для успешного освоения материала по курсу Организация ЭВМ необходимы следующие базовые знания и навыки:

  1. Физика и математика в объеме высшего технического, естественного или экономического учебного заведения, в частности:

    • физические (в частности, электрические) процессы, способы их описания;
    • измерение физической величины, интерпретация результата, ошибка измерения;
    • колебательные процессы, период и частота колебательного процесса;
    • сведения школьного уровня об основных элементах электрических (электронных) цепей;
    • запись чисел в позиционной системе счисления;
    • действия с числами в позиционной системе счисления (школьные правила в столбик);
    • множество целых чисел, множество вещественных чисел;
    • множество рациональных чисел и его использование для приближенного представления значений вещественных чисел.
  2. Информатика в объеме школьной программы, в частности, минимальная практика работы на персональном компьютере.

    Элементарное понятие о компьютерном программировании, минимальный личный опыт составления и отладки простейшей программы:

    • Интуитивное понятие о том, что такое алгоритм
    • Интуитивное представление о процессе выполнения простейшей программы: 1) задание исходных данных, 2) выполнение действий над исходными данными и промежуточными результатами, 3) вывод/представление/сохранение результатов (запоминание для последующего использования, отображение для восприятия человеком).

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

  3. Ясное понимание (осознание) того, что чудеса бывают только в детских волшебных сказках; без труда не вытащишь рыбку из пруда для того, чтобы усвоить в относительно короткое время объем знаний и навыков, соответствующий получаемому Вами второму высшему образованию, необходим существенный объем самостоятельных усилий как минимум, превышаюший время, отводимое учебным планом на аудиторные занятия (лекции).
  4. Приветствуется опыт разработки простых программ на любом языке программирования.
  5. Знание английского языка облегчает получение дополнительной информации (значительная часть источников это электронные документы на английском).

Программа курса

Лекции

Лекция 1

1.1. Введение

1.1.1. Данные, сообщения и сигналы

Аналоговый и цифровой способы отображения информации в сигнале. Представление информации в цифровых устройствах. Многоуровневое и двухуровневое кодирование. Понятие двоичной (логической) переменной.

1.1.2. Алгебра логики

Основные понятия. Использование алгебры логики для описания функционирования цифровых устройств и действий над двоичными операндами

1.1.3. Основные цифровые логические элементы и узлы
1.1.4. Системы счисления, используемые в цифровой вычислительной технике (ЦВТ)

Методы перевода чисел из одной системы в другую

1.2. Многоуровневая организация ЦВМ

Иерархия уровней. Структура простейшей цифровой вычислительной машины с магистральной организацией. Основные функциональные части ЦВМ: процессор, память, периферийные устройства, магистрали, их назначение и основные свойства.

Лекция 2

2.1. Функциональная и структурная организация вычислительного ядра универсальной ЦВМ (процессора и основной памяти)

Уровень процессорных (машинных) команд. Основы синтаксиса языков Ассемблера. Структура процессорной команды в пространстве и во времени. Принцип работы ЦВМ с хранимой программой.

2.2. Способы оценки производительности ЦВМ

Структурные способы повышения производительности

2.3. Особенности представления чисел в ЦВТ

2.3.1. Форматы представления целых чисел, используемые в ЦВТ

Представление целых чисел двоичным кодом. Двоичная целочисленная арифметика в ограниченной разрядной сетке.

2.3.2. Представление чисел с плавающей точкой (ПТ)

Особенности выполнения действий над числами ПТ. Стандарт ANSI/IEEE 754-1985 представления чисел с ПТ.

2.4. Кодирование текстовых данных

ASCII код, кодовые таблицы (страницы), стандарт Unicode, способы кодирования атрибутов и разметки текста. Простейшие (типовые) операции с текстовыми данными.

2.5. Происхождение цифровых изображений и способы их представления в ЦВМ: векторное и растровое представления.

Операции с графическими данными.

2.6. Битовые поля

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

2.7. Способы организации доступа к памяти

  • адресная;
  • с последовательным доступом (стек, очередь);
  • ассоциативная.
2.7.1. Адресная организация: способы адресации

Понятие способа адресации. Необходимость различных способов адресации. Понятия прямой и косвенной адресации. Автомодификация адресов. Многокомпонентные способы адресации. Относительная адресация. Сегментная организация доступа к памяти. Способы адресации в процессорах семейства х86.

2.7.2. Стековая организация памяти

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

Лекция 3

3.1. Структура типовой системы команд цифрового универсального процессора

3.1.1. Действие команд на флаги (биты признаков)
3.1.2. Команды пересылки (копирования) элементов данных: их разновидности и использование.

Команды копирования в архитектуре х86.

3.1.3. Команды для стекового доступа к памяти. Использование автоиндексных способов адресации для организации стекового доступа
3.1.4. Команды обработки данных, связь набора команд обработки с видами обрабатываемых данных
3.1.5. Арифметические команды и действия в ограниченной разрядной сетке. Возможности системы команд для выполнения действий с операндами повышенной разрядности

Арифметика в системе команд х86.

3.1.6. Команды побитовой обработки: особенности выполнения. Примеры использования команд побитовой обработки для действий над битовыми полями
3.1.7. Команды для операций с цепочками (строками). Используемые в таких командах способы адресации

Реализация строковых команд в процессорах х86.

3.2. Управление вычислительным процессом в ЦВМ и его поддержка системой команд

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

3.3. Поддержка блочной (модульной) структуры программ

Модульная структура основной способ борьбы со сложностью в больших программах. Команды, поддерживающие организацию модульной (подпрограммной) структуры: их действие, используемые способы адресации . Аспекты использования подпрограмм. Использование стековой памяти при организации подпрограммной структуры.

Лекция 4

4.1. Управление вычислительным процессом

Организация обмена с периферийными устройствами. Ввод-вывод изолированный и отображаемый на память. Простые примеры организации обмена с периферийными устройствами.

4.2. Синхронизация программы с внешними событиями

Реакция на внешние события с помощью опроса состояния периферийного устройства (поллинг) и с использованием механизма аппаратных прерываний.

4.3. Исключительные ситуации в вычислительной системе

Реакция на исключительные ситуации с помощью механизма прерываний. Типы исключительных ситуаций в ВС.

4.4. Вызов процедур с помощью команд программного прерывания

4.5. Типовая структура подсистемы прерываний в компьютерах

4.6. Многоуровневая организация подсистемы памяти

Кэш-память. Учет особенностей кэш-памяти при оптимизации кода

Лекция 5

5.1. Концепция виртуальной памяти

Механизмы трансляции адреса в режиме виртуальной адресации на примере архитектуры х86. Сегментный механизм трансляции. Дескрипторные таблицы, системные регистры назначение и функции.

Страничный механизм трансляции и реализация виртуальной памяти на основе свопинга страниц.

5.2. Основы защищенного режима в современных процессорах

Категории проверок, выполняемых процессорами семейства х86 в защищенном режиме. Организация реакции на нарушения защиты.

Рекомендуемая литература

Компакт-диск «Сборник материалов по курсам «Организация ЭВМ» и «Микропроцессорные системы».Обложка 253

А.П.Новицкий


Intel® IA-64 Architecture Software Developer Manual. Vol. 1,2,3,4Обложка 252

Intel Corp., 2000.

Исчерпывающее описание 64-разрядной архитектуры процессоров Intel IA-64 Merced/Itanium


Параллельные вычислительные системыОбложка 251

Корнеев В.В -М.: «Нолидж», 1999.

Учебно-справочное пособие по современным высокопроизводительным вычислительным системам


Современные микропроцессорыОбложка 250

Корнеев В.В., Киселев А.В. -М.: «Нолидж», 2000.

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


Форматы файлов InternetОбложка 249

Тим Кенцл, СПб, “Питер”,1997

Краткое практическое руководство по большинству используемых в Сети форматов файлов


The Intel Architecture Software Developer’s Manual. Vol.1,2,3.Обложка 248

Intel Corp., 1997.

Фирменная документация Intel – крупнейшего мирового производителя микропроцессоров различных классов – около 10 семейств. Второй том Vol.2 – подробный справочник по системе команд процессоров х86, третий том Vol.3 – детальное описание модели процес-сора для системного программиста.


Программирование микропроцессора 8088Обложка 247

Дао Л. .-М.:Мир,1988.

Старенькое, но хорошее учебно-справочное пособие по системе команд процессоров i8086, i8088


Микропроцессоры от 8086 до Pentium III Xeon и AMD K6-3.Обложка 246

Ровдо А.А. Москва, «ДМК», 2000.

Справочник по архитектуре процессоров х86 и их системе команд.


Процессоры Pentium III, Athlon и другие…Обложка 245

Гук М.Ю., Юров В. СПб, «Питер», 2000.

Книга содержит описание старших моделей процессоров семейства х86, а также может служить справочником по системе команда этого семейства.


Процессоры Pentium II, Pentium Pro и просто Pentium.Обложка 244

Гук М.Ю. СПб, «Питер», 1999

Справочник по архитектуре старших моделей процессоров х86


Конспект лекций по курсу «Организация ЭВМ».Обложка 243

Новицкий А.П.

помещен в сетевой каталог \\feanor\public2\ПО ПК и ЛС\Организация ЭВМ и систем\ доступный слушателям по чтению


Ассемблер. Специальный справочник.Обложка 242

Юров В., СПб: «Питер» 2000.

Весьма полный справочник по системе команд процессоров семейства х86.


Многоуровневая организация ЭВМ.-М.:Мир,1979.Обложка 241

Танненбаум Э.

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


Архитектура компьютера.Обложка 240

Танненбаум Э.

Перевод 4-го издания книги [2]. Это издание существенно переработано по сравнению с [2]


Аппаратные средства IBM PC. Энциклопедия.Обложка 160

М. Гук, Спб Питерком, 1999

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