☀️МГТУ Баумана // Ответы на вопросы к экзамену☀️по дисциплине «Системное программирование» ☀️
Описание
Оформление:
- Кратко,по существу.
- ШрифтTNR-12, интервал -1.
- авто Содержание для быстрого поиска Вопрос-Ответ.
ВОПРОСЫ К ЭКЗАМЕНУ по дисциплине «Системное программирование»
1. Охарактеризуйте основные методы подготовка и отладка программы на языке Ассемблер.
2. Раскройте основные функции Ассемблера, как системной программы.
3. Раскройте основные функции Компоновщика (на примере Tlink), как системной программы.
4. Раскройте основные функции Отладчика (на примере TD), как системной программы.
5. Дайте определение и охарактеризуйте архитектуру процессоров компании Intel x86.
6. Дайте определение и приведите характеристики архитектуры 16-разрядного микропроцессора x86.
7. Раскройте понятие «Регистр» в архитектуре процессоров x86. Опишите их ключевые характеристики.
8. Дайте определение и приведите классификацию регистров 16-разрядного микропроцессора x86.
9. Дайте определение и охарактеризуйте основные методы работы регистров общего назначения.
10. Дайте определение и перечислите основные методы использования сегментных регистров в архитектуре x86.
11. Дайте определение и охарактеризуйте основные методы использования регистров состояния и управления в архитектуре x86.
12. Дайте определение и охарактеризуйте основные методы использования регистров состояния и управления в архитектуре x86.
13. Раскройте роль регистра флагов в формировании структуры программы на языке Ассемблер.
14. Дайте определение и охарактеризуйте основные методы использования указательных и индексных регистров в архитектуре x86.
15. Дайте определение и приведите характеристики архитектуры математического сопроцессора компании Intel (на примере x87).
16. Дайте определение и раскройте понятие «независимая стековая архитектура» математического сопроцессора x87.
17. Дайте определение и охарактеризуйте работу регистров управления и состояния математического сопроцессора x87
18. Приведите общий алгоритм взаимодействия центрального процессора (CPU) и математического сопроцессора (x87 FPU) при выполнении операции с плавающей точкой.
19. Раскройте сущность и приведите классификацию прерываний в архитектуре x86.
20. Приведите единый алгоритм обработки прерывания.
21. Опишите аппаратный механизм реализации прерываний в процессоре x86, включая роль контроллера прерываний.
22. Раскройте понятие «таблицы векторов прерываний» в архитектуре x86. Опишите еѐ назначение, структуру, местоположение и принцип работы.
23. Приведите общие положения вызова функций операционной системы MS-DOS через программное прерывание INT 21h. Приведите пример.
24. Раскройте понятие «сегментации памяти» в архитектуре x86. Опишите еѐ сущность, цели, механизм реализации и отличия в реальном режиме.
25. Раскройте понятия «организация памяти» и «ячейка памяти» в контексте архитектуры ЭВМ.
26. Раскройте принципы (режимы) адресации в архитектуре x86. Объясните целесообразность использования непосредственной, прямой и относительной адресаций. Приведите примеры.
27. Раскройте принципы (режимы) адресации в архитектуре x86. Объясните целесообразность использования косвенной и индексной адресаций. Приведите примеры.
28. Раскройте понятие «стек» в архитектуре x86. Опишите его сущность и ключевую роль в работе процессора и программ.
29. Дайте определение и опишите роль машинной команды в архитектуре x86.
30. Раскройте понятие и структуру машинной команды в архитектуре x86. Опишите основные поля (байты) машинной команды и их назначение.
31. Дайте точное определение языка Ассемблер и поясните его место среди других языков.
32. Приведите общую структуру программ на языке Ассемблера, проанализировав описания программ в формате типа .com и типа .exe.
33. Приведите алгоритм подготовка и отладка программы на языке Ассемблер, перечислив основные этапы и программы, предназначенные для этого.
34. Раскройте содержание и укажите область применения моделей памяти, используемых в программах на языке Ассемблер.
35. Изложите концепцию представления данных в языке Ассемблер. Дайте определение и охарактеризуйте основные директивы размещения данных на примерах записи чисел, символьных строк и отдельных символов.
36. На примере команды пересылки данных дайте определение команды в языке Ассемблер и приведите общую структуру (формат) команды в языке Ассемблер x86.
37. На примере директивы объявления макроса дайте определение и приведите общую структуру директив на примере x86.
38. Обозначьте разницу между командами (инструкциями) и директивами (псевдокомандами) в языке Ассемблера. Приведите примеры.
39. Используя примеры, раскройте особенности формата команд сопроцессора.
40. Раскройте значение и роль команд пересылки данных (на примере MOV и еѐ вариаций) в программах на языке Ассемблер.
41. Дайте определение и приведите примеры команд целочисленной арифметики в архитектуре x86. Подробно охарактеризуйте команды сложения и вычитания, их варианты и влияние на флаги.
42. Дайте определение и приведите примеры команд целочисленной арифметики в архитектуре x86. Подробно охарактеризуйте команды умножения и деления, их форматы, использование регистров и обработку результатов.
43. Дайте определение и приведите примеры команд преобразования типов в Ассемблере x86. Опишите их назначение при выполнении арифметических команд.
44. Приведите общие характеристики синтаксиса и примеры команд базовой арифметики математического сопроцессора (x87 FPU).
45. Охарактеризуйте основные категории команд математического сопроцессора (x87 FPU). Для каждой категории приведите примеры команд и кратко опишите их назначение.
46. Поясните для чего используются побитовые операции в программировании. Назовите соответствующие им команды ассемблера и приведите примеры использования.
47. Раскройте сущность и охарактеризуйте типы переходов в структуре программы на языке Ассемблер. Приведите примеры и объясните их назначение.
48. Дайте характеристику и приведите примеры работы команды безусловного перехода JMP в языке Ассемблера x86.
49. Дайте характеристику флагам состояния процессора x86 и на их примере объясните работу команд условного перехода типа Jcond. Приведите примеры.
50. На примере команды сравнения CMP дайте характеристику и приведите примеры работы команд условного перехода типа Jcond в языке ассемблера
x86. Объясните, как CMP подготавливает флаги для принятия решения командой Jcond.
51. На примере блок-схемы и участка кода раскройте особенности реализации циклического выполнения части кода программы, при помощи базовых команд передачи управления.
52. На примере блок-схемы и участка кода раскройте особенности реализации циклического выполнения части кода программы, при помощи специализированных команд LOOPx.
53. На примере пересылки элементов из одной строки в другую проиллюстрируйте общие положения обработки строк в языке Ассемблера x86. Используйте строковые команды и поясните роль каждого этапа.
54. На примере поиска конкретного символа в нуль-терминированной строке проиллюстрируйте общие положения обработки строк в языке Ассемблера x86. Поясните роль регистров и каждого этапа алгоритма.
55. Раскройте понятие префикса повторения в языке ассемблера x86. Приведите примеры, характеризующие принцип работы, правила использования в программах для обработки данных.
56. Перечислите и охарактеризуйте основные команды работы со стеком в ассемблере. Приведите примеры их использования с комментариями о изменении указателя стека.
57. Приведите общие характеристики и примеры описания макроопределений в Ассемблере. Поясните целесообразность их применения.
58. Приведите общие характеристики и примеры описания процедур в Ассемблере. Поясните целесообразность их применения.
59.
60. Изложите концепцию взаимодействия Ассемблера и языков высокого уровня, перечислив условия, необходимые для стыковки модулей, написанных на этих языках.
61. Перечислите и охарактеризуйте основные этапы работы с файлами в языке Ассемблер. Перечислите вектора прерываний, используемые для файловых операций, приведите пример.
Предложить вариант программы на языке Ассемблер. В сегменте данных задан массив (69, 0, -26, 40, 3, -17, -84, -9, 82, 11). В заданном числовом массиве определить среднее арифметическое положительных элементов, результат сохранить в переменной..
Предложить вариант программы на языке Ассемблер. В сегменте данных задан массив целых чисел (59, 70, 46, -17, -19, 46, 46, 0, -20, 46). В заданном числовом массиве определить индексы элементов, имеющих значение 46, записать их в другой массив.
Предложить вариант обработки заданного массива на языке Ассемблер. В сегменте данных задан массив (8, 39, 0, -56, 42, -36, -60, 99, -82, 5). В заданном числовом массиве каждый четный элемент заменить на нуль, результат переписать в другой массив.
Показать/скрыть дополнительное описание
Министерство науки и высшего образования Российской федерации Калужский филиал федерального государственного автономного образовательного учреждения высшего образования «МОСКОВСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ имени Н.Э. Баумана (национальный исследовательский университет)» (КФ МГТУ им. Н.Э.Баумана) РАССМОТРЕНО и ОДОБРЕНО «Программное обеспечение ЭВМ, информационные технологии» ВОПРОСЫ К ЭКЗАМЕНУ по дисциплине «Системное программирование» для студентов групп ИУК2-31,32,33Б, ИУК4-31,32,33Б, ИУК5-31,32,33Б, ИУК6-31,33, 39, 1.Охарактеризуйте основные методы подготовка и отладка программы на языке Ассемблер. 2.Раскройте основные функции Ассемблера, как системной программы.
3.Раскройте основные функции Компоновщика (на примере Tlink), как системной программы. 4.Раскройте основные функции Отладчика (на примере TD), как системной программы. 5.Дайте определение и охарактеризуйте архитектуру процессоров компании Intel x86. 6.Дайте определение и приведите характеристикиархитектуры 16-разрядного микропроцессора x86. 7.Раскройте понятие «Регистр» в архитектуре процессоров x86. Опишите их ключевые характеристики. 8.Дайте определение и приведите классификацию регистров 16-разрядного микропроцессора x86. 9.Дайте определение и охарактеризуйте основные методы работы регистров общего назначения. 10.Дайте определение и перечислите основные методы использования сегментных регистров в архитектуре x86.
11.Дайтеопределениеиохарактеризуйтеосновныеметодыиспользования регистров состояния и управления в архитектуре x86. 12.Дайтеопределениеиохарактеризуйтеосновныеметодыиспользования регистров состояния и управления в архитектуре x86. 13.Раскройте роль регистра флагов в формировании структуры программы на языке Ассемблер. 14.Дайте определение и охарактеризуйте основные методы использования указательных и индексных регистров в архитектуре x86. 15.Дайте определение и приведите характеристики архитектуры математического сопроцессора компании Intel (на примере x87). 16.Дайте определение и раскройте понятие «независимая стековая архитектура» математического сопроцессора x87.
17.Дайте определение и охарактеризуйте работу регистров управления и состояния математического сопроцессора x87 18.Приведите общий алгоритм взаимодействия центрального процессора (CPU) и математического сопроцессора (x87 FPU) при выполнении операции с плавающей точкой. 19.Раскройте сущность и приведите классификацию прерываний в архитектуре x86. 20.Приведите единый алгоритм обработки прерывания. 21.Опишите аппаратный механизм реализации прерываний в процессоре x86, включая роль контроллера прерываний. 22.Раскройте понятие «таблицы векторов прерываний» в архитектуре x86. Опишите еѐ назначение, структуру, местоположение и принцип работы. 23.Приведите общие положения вызова функций операционной системы MS-DOS через программное прерывание INT 21h.
Приведите пример. 24.Раскройте понятие «сегментации памяти» в архитектуре x86. Опишите еѐ сущность, цели, механизм реализации и отличия в реальном режиме. 25.Раскройте понятия «организация памяти» и «ячейка памяти» в контексте архитектуры ЭВМ. 26.Раскройте принципы (режимы) адресации в архитектуре x86. Объясните целесообразность использования непосредственной, прямой и относительной адресаций. Приведите примеры. 27.Раскройте принципы (режимы) адресации в архитектуре x86. Объясните целесообразность использования косвенной и индексной адресаций. Приведите примеры. 28.Раскройте понятие «стек» в архитектуре x86. Опишите его сущность и ключевую роль в работе процессора и программ.
29.Дайте определение и опишите роль машинной команды в архитектуре x86. 30.Раскройтепонятиеиструктурумашиннойкоманды в архитектуре x86. Опишите основные поля (байты) машинной команды и их назначение. 31.Дайте точное определение языка Ассемблер и поясните его место среди других языков. 32.Приведите общую структуру программ на языке Ассемблера, проанализировав описания программ в формате типа .com и типа .exe. 33.Приведите алгоритм подготовка и отладка программы на языке Ассемблер, перечислив основные этапы и программы, предназначенные для этого. 34.Раскройте содержание и укажите область применения моделей памяти, используемых в программах на языке Ассемблер.
35.Изложите концепцию представления данных в языке Ассемблер. Дайте определение и охарактеризуйте основные директивы размещения данных на примерах записи чисел, символьных строк и отдельных символов. 36.На примере команды пересылки данных дайте определение команды в языке Ассемблер и приведите общую структуру (формат) команды в языке Ассемблер x86. 37.На примере директивы объявления макроса дайте определение и приведите общую структуру директив на примере x86. 38.Обозначьте разницу между командами (инструкциями) и директивами (псевдокомандами) в языке Ассемблера. Приведите примеры. 39.Используя примеры, раскройте особенности формата команд сопроцессора.
40.Раскройте значение и роль команд пересылки данных (на примере MOV и еѐ вариаций) в программах на языке Ассемблер. 41.Дайте определение и приведите примеры команд целочисленной арифметики в архитектуре x86. Подробно охарактеризуйте команды сложения и вычитания, их варианты и влияние на флаги. 42.Дайте определение и приведите примеры команд целочисленной арифметики в архитектуре x86. Подробно охарактеризуйте команды умножения и деления, их форматы, использование регистров и обработку результатов. 43.Дайте определение и приведите примеры команд преобразования типов в Ассемблере x86. Опишите их назначение при выполнении арифметических команд. 44.Приведите общие характеристики синтаксиса и примеры команд базовой арифметики математического сопроцессора (x87 FPU).
45.Охарактеризуйте основные категории команд математического сопроцессора (x87 FPU). Для каждой категории приведите примеры команд и кратко опишите их назначение. 46.Поясните для чего используются побитовые операции в программировании. Назовите соответствующие им команды ассемблера и приведите примеры использования. 47.Раскройте сущность и охарактеризуйте типы переходов в структуре программы на языке Ассемблер. Приведите примеры и объясните их назначение. 48.Дайте характеристику и приведите примеры работы команды безусловного перехода JMP в языке Ассемблера x86. 49.Дайте характеристику флагам состояния процессора x86 и на их примере объясните работу команд условного перехода типа Jcond.
Приведите примеры. 50.На примере команды сравнения CMP дайте характеристику и приведите примеры работы команд условного перехода типа Jcond в языке ассемблера x86. Объясните, как CMP подготавливает флаги для принятия решения командой Jcond. 51.На примере блок-схемы и участка кода раскройте особенности реализации циклического выполнения части кода программы, при помощи базовых команд передачи управления. 52.На примере блок-схемы и участка кода раскройте особенности реализации циклического выполнения части кода программы, при помощи специализированных команд LOOPx. 53.На примере пересылки элементов из одной строки в другую проиллюстрируйте общие положения обработки строк в языке Ассемблера x86.
Используйте строковые команды и поясните роль каждого этапа. 54.На примере поиска конкретного символа в нуль-терминированной строке проиллюстрируйте общие положения обработки строк в языке Ассемблера x86. Поясните роль регистров и каждого этапа алгоритма. 55.Раскройте понятие префикса повторения в языке ассемблера x86. Приведите примеры, характеризующие принцип работы, правила использования в программах для обработки данных. 56.Перечислите и охарактеризуйте основные команды работы со стеком в ассемблере. Приведите примеры их использования с комментариями о изменении указателя стека. 57.Приведите общие характеристики и примеры описания макроопределений в Ассемблере.
Поясните целесообразность их применения. 58.Приведите общие характеристики и примеры описания процедур в Ассемблере. Поясните целесообразность их применения. 59. 60.Изложите концепцию взаимодействия Ассемблера и языков высокого уровня, перечислив условия, необходимые для стыковки модулей, написанных на этих языках. 61.Перечислите и охарактеризуйте основные этапы работы с файлами в языке Ассемблер. Перечислите вектора прерываний, используемые для файловых операций, приведите пример. Предложить вариант программы на языке Ассемблер. В сегменте данных задан массив (69, 0, -26, 40, 3, -17, -84, -9, 82, 11). В заданном числовом массиве определить среднее арифметическое положительных элементов, результат сохранить в переменной..
Предложить вариант программы на языке Ассемблер. В сегменте данных задан массив целых чисел (59, 70, 46, -17, -19, 46, 46, 0, -20, 46). В заданном числовом массиве определить индексы элементов, имеющих значение 46, записать их в другой массив. Предложить вариант обработки заданного массива на языке Ассемблер. В сегменте данных задан массив (8, 39, 0, -56, 42, -36, -60, 99, -82, 5). В заданном числовом массиве каждый четный элемент заменить на нуль, результат переписать в другой массив..
МГТУ им. Н.Э.Баумана


















