Июнь, 24

Знаменатель

(c) Larry Ewing, Simon Budig, Garrett LeSage
с 1994 г.

Кафедра Информатики и Математического Обеспечения

ПетрГУ | ИМиИТ | О кафедре | Проекты | Лаборатория ИТС | Семинары НФИ/AMICT
Сотрудники | Учебный процесс | Табель-календарь | Курсовые и выпускные работы
Вычислительные ресурсы | Публикации | Архив новостей | Контактная информация (English)

Вопросы для письменного зачета по курсу "Архитектура ЭВМ и систем" (гр. 103 - 106)

Общие требования

Вопросы

  1. Уровни пирамиды виртуальных машин.
  2. Задачи, для решения которых используется язык ассемблера.
  3. Определение и свойства позиционной системы счисления.
  4. Алгоритмы перевода чисел из систем с основанием 2, 8 и 16 в десятичную систему.
  5. Алгоритмы перевода чисел из десятичной системы в системы с основанием 2, 8 и 16.
  6. Рациональный алгоритм перевода больших десятичных чисел в двоичную систему.
  7. Алгоритмы переводов 2 -> 8, 2 -> 16, 8 -> 16 (цифры - основания систем счисления).
  8. Алгоритмы переводов 8 -> 2, 16 -> 2, 16 -> 8 (цифры - основания систем счисления).
  9. Макроопределение, макровызов, задание формальных и фактических параметров.
  10. Макрорасширение, получение и использование порядкового номера макровызова.
  11. Описание файла листинга и счетчик размещения.
  12. Общая характеристика архитектуры фон Неймана, роль регистра eip.
  13. Оперативная память, ее адресное пространство, операции чтения и записи.
  14. Методы хранения и доступа к словам и двойным словам - littlendian и bigendian.
  15. Регистры eax, ebx, ecx, edx и их специальные свойства.
  16. Регистры esp, ebp, eip и их специальные свойства.
  17. Системные вызовы. Назначение, описание, пример.
  18. Взаимодействие терминала и файла stdin при использовании системного вызова read.
  19. Архитектурные типы данных. Диапазоны значений целых данных.
  20. Знаковые и беззнаковые целые, их сравнение и команды арифметики для них.
  21. Директивы определения данных в языке ассемблера.
  22. Дополнительный код и его свойства.
  23. Регистр флагов, его назначение и использование.
  24. Флаги CF, ZF, SF, OF.
  25. Переполнение, общие положения. Беззнаковое переполнение.
  26. Переполнение, общие положения. Знаковое переполнение.
  27. Команда CMP и семейство команд Jcc, их использование.
  28. Возникновение языка ассемблера, его основная идея и преимущества перед разработкой программ на языке команд Центрального процессора.
  29. Адресный доступ к памяти, операнды источники и приемники, характеризация операндов.
  30. Перемещение (исполнительный адрес) операнда в памяти, определение и преимущества базово-индексной адресации.
  31. Общая формула режимов адресации, преимущества базово-индексной адресации.
  32. Базовая адресация.
  33. Индексная адресация.
  34. Стековый доступ к памяти.
  35. Назначение, реализация архитектурного стека, задачи, в которых он используется.
  36. Модули и функции, общая схема работы функции.
  37. Основные элементы конструкции функции.
  38. Виды параметров и способы передачи их функции.
  39. Соглашения о связи функций принятые в языке C.
  40. Организация передачи управления функции и возврата в вызывающую программу.
  41. Адресация параметров функции в стеке.
  42. Адресация локальных переменных функции в стеке.
  43. Организация вызова функции на языке ассемблера из программы на языке C.
  44. Система команд, типы и локализация операндов.
  45. Структура команды, байты Mod/RM и SIB.
  46. Основные группы команд в системе команд.
  47. Особенности записи команд в синтаксисе AT\&T.
  48. Команды ADC и SBB.
  49. Команды MUL и IDIV.
  50. Команды IMUL и DIV.
  51. Почему необходима раздельная трансляция?
  52. Раздельная трансляция, определение внешних имен, функции редактора связей.
  53. Флаги отладочного ассемблирования и управление выполнением программы в отладчике kdbg.