Главная » Все файлы » Просмотр файлов из архивов » PDF-файлы » Семинары по курсу «Архитектура ЭВМ и язык ассемблера» учебно-методическое пособие. Часть 2. - Е.А. Кузьменкова_ В.А. Падарян_ М.А. Соловьев

Семинары по курсу «Архитектура ЭВМ и язык ассемблера» учебно-методическое пособие. Часть 2. - Е.А. Кузьменкова_ В.А. Падарян_ М.А. Соловьев

PDF-файл Семинары по курсу «Архитектура ЭВМ и язык ассемблера» учебно-методическое пособие. Часть 2. - Е.А. Кузьменкова_ В.А. Падарян_ М.А. Соловьев Архитектура ЭВМ (36554): Семинары - 2 семестрСеминары по курсу «Архитектура ЭВМ и язык ассемблера» учебно-методическое пособие. Часть 2. - Е.А. Кузьменкова_ В.А. Падарян_ М.А. Соловьев: Архитект2019-04-28СтудИзба

Описание файла

PDF-файл из архива "Семинары по курсу «Архитектура ЭВМ и язык ассемблера» учебно-методическое пособие. Часть 2. - Е.А. Кузьменкова_ В.А. Падарян_ М.А. Соловьев", который расположен в категории "". Всё это находится в предмете "архитектура эвм" из 2 семестр, которые можно найти в файловом архиве МГУ им. Ломоносова. Не смотря на прямую связь этого архива с МГУ им. Ломоносова, его также можно найти и в других разделах. .

Просмотр PDF-файла онлайн

Текст из PDF

МОСКОВСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТимени М.В. ЛомоносоваФакультет вычислительной математики и кибернетикиЕ.А. Кузьменкова, В.А. Падарян, М.А. СоловьевСеминары по курсу"Архитектура ЭВМ иязык ассемблера"(учебно-методическое пособие)Часть 2МАКС ПРЕССМосква – 2014УДК 004.2+004.43(075.8)ББК 32.973-02я73К89Печатается по решению Редакционно-издательского Советафакультета вычислительной математики и кибернетикиМГУ имени М.В. ЛомоносоваРецензенты:C.Ю. Соловьев, профессорА.Н.

Терехин, доцентЕ.А. Кузьменкова, В.А. Падарян, М.А. СоловьевК89 Семинары по курсу «Архитектура ЭВМ и язык ассемблера»: учебно-методическое пособие. Часть 2. — М. Издательский отдел факультета ВМиКМГУ им. М.В. Ломоносова (лицензия ИД № 05899 от 24.09.2001); МАКС Пресс,2014. – 100 с.ISBN 978-5-89407-530-3ISBN 978-5-317-04886-0Учебное пособие содержит задачи и упражнения по второй части семинарских занятийкурса «Архитектура ЭВМ и язык ассемблера», прочитанного студентам 1 потока 1 курсафакультета Вычислительной математики и кибернетики МГУ в 2010-2014 гг.

Пособиепредназначено для студентов, изучающих основной курс программирования, а такжедля преподавателей и аспирантов.Ключевые слова: архитектура ЭВМ, язык ассемблера, x86, nasm, реализация языка Си.УДК 004.2+004.43(075.8)ББК 32.973-02я73This textbook contains problems and exercises for the second part of the seminar activities ofthe "Computer architecture and assembly language" course for 1st year 1st stream students ofthe faculty of Computational Mathematics and Cybernetics of Moscow State University thathad been delivered in 2010-2014.

The textbook is aimed at students learning the base programming course and at lecturers and postgraduate students.Key words: computer architecture, assembly language, x86, nasm, C language implementation.2ISBN 978-5-89407-530-3© Факультет вычислительной математики и кибернетики МГУ имени М.В. Ломоносова, 2014ISBN 978-5-317-04886-0© Кузьменкова Е.А., Падарян В.А., Соловьев М.А., 2014СодержаниеВведение ............................................................................................................................. 61.Циклы и многомерные массивы ..............................................................................

7Пример 1-1 Циклический сдвиг в массиве .................................................................. 7Компактное кодирование циклов ................................................................................ 9Пример 1-2 Аппаратная поддержка цикла ................................................................ 10Многомерный массив ..................................................................................................

11Пример 1-3 Матрица целых чисел .............................................................................. 12Пример 1-4 Транспонирование матрицы .................................................................. 13Пример 1-5 Восстановление размеров массива ....................................................... 15Массив указателей ....................................................................................................... 16Пример 1-6 Массив указателей vs. Двумерный массив ...........................................

16Задачи ............................................................................................................................ 182.Структуры и объединения ...................................................................................... 21Выравнивание данных в памяти ................................................................................. 21Пример 2-1 Размещение полей структуры в памяти ................................................

22Пример 2-2 Структуры и объединения ...................................................................... 23Пример 2-3 Структуры и объединения в x86_64 ....................................................... 24Работа с полями............................................................................................................ 25Пример 2-4 Чтение и запись полей ............................................................................ 25Битовые поля ................................................................................................................

27Пример 2-5 Взведение и сброс отдельных битов ..................................................... 27Задачи ............................................................................................................................ 283.Организация вызова функций ................................................................................ 32Аппаратный стек ........................................................................................................... 32Пример 3-1 Пересылки без MOV ................................................................................ 32Соглашение вызова cdecl............................................................................................. 33Пример 3-2 Скалярное произведение .......................................................................

34Пример 3-3 Рекурсивная функция .............................................................................. 36Пример 3-4 Восстановление прототипа функции ..................................................... 37Пример 3-5 Нарушение соглашения вызова ............................................................. 393Вызов функций по указателю ......................................................................................

39Пример 3-6 Просто указатель ..................................................................................... 39Пример 3-7 Массив в качестве возвращаемого значения ....................................... 40Пример 3-8 Функциональный тип у возвращаемого значения ............................... 41Использование библиотечных функций .................................................................... 42Пример 3-9 Динамическая память и переменное число параметров ....................

43Пример 3-10 Стандартный ввод/вывод своими силами .......................................... 45Пример 3-11 Дамп файла ............................................................................................ 47Устройство фрейма функции ....................................................................................... 49Пример 3-12 Карта фрейма ......................................................................................... 50Пример 3-13 Эксплойт ................................................................................................. 52Задачи ............................................................................................................................

544.Различные соглашения вызова функций............................................................... 59Оптимизация вызова функций .................................................................................... 60Пример 4-1 “Omit frame pointer” ................................................................................ 60Пример 4-2 Соглашение fastcall ..................................................................................

61Очистка стека от аргументов вызова .......................................................................... 62Пример 4-3 Соглашение stdcall ................................................................................... 63Пример 4-4 Передача структуры в функцию в качестве параметра .......................

63Пример 4-5 Возвращаемое значение – структура .................................................... 65Пример 4-6 Вызов функции с возвращаемой структурой ........................................ 67Задачи ............................................................................................................................

695.Сопроцессор x87 и обработка чисел с плавающей точкой.................................. 72Представление вещественных чисел – числа с плавающей точкой........................ 72Пример 5-1 Перевод числа в модельную кодировку ............................................... 73Сопроцессор x87 ........................................................................................................... 74Пример 5-2 Взятие модуля числа ............................................................................... 75Пример 5-3 Разность чисел ......................................................................................... 76Пример 5-4 Ввод и вывод чисел с плавающей точкой .............................................

77Пример 5-5 Сравнение чисел с плавающей точкой .................................................. 78Пример 5-6 Вычисление площади треугольника ...................................................... 794Задачи ............................................................................................................................ 80Ответы и решения ............................................................................................................ 85Литература ........................................................................................................................

985ВведениеПособие содержит кратко изложенный материал семинарских занятий по курсу«Архитектура ЭВМ и язык ассемблера», читаемого для студентов 1 потока 1 курсафакультета ВМК МГУ. Рассматриваются темы занятий второй половины семестра,такие как: организация циклов, работа с агрегатными типами данных, различныесоглашения вызовов функций, работа с числами с плавающей точкой. Особое внимание уделено двоичному (бинарному) интерфейсу приложений платформы IA-32.На примере компилятора gcc показывается, как в Си-программах реализуется этотинтерфейс, и каким образом он может повлиять на скорость работы программы иее безопасность.Для разбора задач требуется свободное владение материалом первой части курса.Каждая рассматриваемая тема содержит краткий вводный материал, детально разобранные типовые задачи и задачи для самостоятельной работы, часть которыхснабжена ответами.Методическое пособие предназначено для преподавателей, ведущих практические занятия в поддержку лекционного курса «Архитектура ЭВМ и язык ассемблера» для студентов 1 курса, а также рекомендуется студентам при подготовке кписьменному экзамену.61.Циклы и многомерные массивыРабота с массивами требует от профессионального разработчика эффективногорешения ряда задач: организации циклов, возможно многократно вложенных, кодирования индексных выражений и четкого понимания, как именно данные размещены в памяти.

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5224
Авторов
на СтудИзбе
428
Средний доход
с одного платного файла
Обучение Подробнее