Различия между версиями 7 и 8
Версия 7 от 2015-12-13 22:58:40
Размер: 4110
Редактор: FrBrGeorge
Комментарий:
Версия 8 от 2015-12-14 09:19:38
Размер: 3721
Редактор: FrBrGeorge
Комментарий:
Удаления помечены так. Добавления помечены так.
Строка 9: Строка 9:
<<Include(^ArchitectureAssembler/[0-9].*, , titlesonly)>> ##Include(^ArchitectureAssembler/[0-9].*, , titlesonly)>>
Строка 11: Строка 11:
 1. «ЭВМ вообще»
  * Калькулятор → хранение команд → хранение данных → атрибуция данных → подготовка и вывод результатов → выполнение команд в зависимости от данных → ЭВМ
   * Адресация и переходы как частные случаи
  * ⇒ Архитектура фон Неймана
  * исполнитель, память, В/В, коммутатор
 1. Данные в памяти и введение в ММ3
 1. ММ3 условия и циклы
 1. [[/01_Overall|Представление об архитектуре ЭВМ]]
 1. [[/02_MM3|Хранение данных и команд в памяти; ММ3]]
 1. [[/03_ConditionalsLoops|ММ3 условия и циклы]]

Архитектура ЭВМ и язык ассемблера

проект курса второго семестра

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

Практика: первые несколько занятий проходят на базе эмуляторов учебных машин, остальные — на базе эмулятора MIPS (скорее всего, MARS, но возможно и SPIM).

План лекций

Примерная разбивка по два часа. Возможно, некоторые темы толстоваты, тогда они занимают четыре

  1. Представление об архитектуре ЭВМ

  2. Хранение данных и команд в памяти; ММ3

  3. ММ3 условия и циклы

  4. ММ2, ММ1, рассказ о ММ0
  5. ММР (она же с модификацией адреса и переменным размером команды). Проблема подпрограмм всё ещё не решена
  6. Понятие ассемблера. /!\ На чем ассамблер? На ММР??

  7. SPIM, базовые сведения о работе программы, программа сложения двух чисел
  8. SPIM — общая архитектура (схема), цикл работы процессора (понятие о микрокомандах), базовые сведения о системе команд и работе программы
  9. Адресация, индексация, SPIM: работа с байтами. Секции .text и .data
  10. Шина. Взаимодействие процессор-память; RAM, ROM, Reg; Гарвард/Принстон; 100 циклов для одного обращения к памяти
  11. Структура памяти, псевдоинструкции, макросы, понятие о конвенциях (именование и использование регистров).
  12. Стек (+.stack). Подпрограммы и связанные с ними конвенции
  13. Фреймы, локальные переменные, рекурсия, ещё конвенции
  14. Взаимодействие с ОС, введение
  15. FPU
  16. Исключения (FPU, арифм., переполнения) syscall. Обработчики исключений. Проблема исключения посреди инструкции. Роль ОС в обработке.
  17. I/O: порты, MMIO, SPIM: виды внешних устройств
  18. Прерывания В/В, DMA
  19. КЕШ
  20. Конвейер.
  21. Многозадачность
  22. Многопроцессорные системы
  23. Виртуализация.

Ещё не вошло из того, что нужно рассказать и можно (?) показать на SPIM:

  • Супервизор,
  • Виртуальная память,
  • Конвейер,
  • Кеш,

Из того, что показать нельзя (?)

  • SMP
  • Суперскалярность
  • ???

ArchitectureAssembler (последним исправлял пользователь FrBrGeorge 2015-12-29 11:37:54)