Тема 6.11 Вызов ассемблерных функций из С++. Передача аргументов из С++ в язык ассемблер
⇐ ПредыдущаяСтр 49 из 49 Вызов функций C во встроенном коде на языке ассемблера Статья 02. 05. 2022 Чтение занимает 2 мин Участники: 6 Блок, относящийся только к системам Microsoft Блок __asm может вызывать функции языка C, включая библиотечные процедуры языка C. В следующем примере вызывается библиотечная процедура printf. C++Копировать // InlineAssembler_Calling_C_Functions_in_Inline_Assembly. cpp // processor: x86 #include < stdio. h>
char format[] = " %s %s\n"; char hello[] = " Hello"; char world[] = " world"; int main( void ) { __asm { mov eax, offset world push eax mov eax, offset hello push eax mov eax, offset format push eax call printf //clean up the stack so that main can exit cleanly //use the unused register ebx to do the cleanup pop ebx pop ebx pop ebx } } Так как аргументы функции передается в стеке, перед вызовом функции просто поместите в стек требуемые аргументы (в предыдущем примере это указатели строк). Аргументы помещаются в стек в обратном порядке, поэтому они извлекаются из стека в требуемом порядке. Эмуляция оператора C C++Копировать printf( format, hello, world );
Практические задания
Список использованной литературы
1. Самофалов К. Г., Корнейчук В. И., Тарасенко В. П. Электронные цифровые вычислительные машины: Учебник. — Киев: Высшая школа. — 1976. — 480 с. 2. Потемкин И. С. Функциональные узлы цифровой автоматики. — М.: Энергоатомиздат. — 1988. — 320 с. 3. Угрюмов Е. П. Проектирование элементов и узлов ЭВМ: Учеб. пособие для вузов. — М.: Высшая школа. — 1987. — 320 с. 4. Каган Б. М. Электронные вычислительные машины и системы. — 3-е изд., перераб. и доп. — Энергоатомиздат, 1991. — ISBN 5-283-01531-9. 5. Угрюмов Е. П. Цифровая схемотехника. Учеб. пособие для вузов. Изд. 2. — БХВ-Петербург, 2004. 6. Самофалов К. Г., Романкевич А. М., Валуйский В. Н., Каневский Ю. С., Пиневич М. М. 7. Прикладная теория цифровых автоматов. — К.: Вища школа, 1987. — С. 375.
8. Ершов А. П., Монахов В. М., Бешенков С. А. и др. 1 // Основы информатики и вычислительной техники: Проб. учеб. пособие для сред. учеб. заведений. В 2 ч. — М.: Просвещение, 1985. — С. 96. 9. Ершов А. П., Монахов В. М., Кузнецов А. А. и др. 2 // Основы информатики и вычислительной техники: Проб. учеб. пособие для сред. учеб. заведений. В 2 ч. — М.: Просвещение, 1986. — С. 143. 10. IX Арифметико-логическое устройство (недоступная ссылка). Логические основы ЭВМ. Пособие к курсам «Радиоэлектроника» и «Микропроцессорные средства». Республика Карелия, г. Петрозаводск, ПетрГУ. 11. Аверченков О. Е. Основы схемотехники аналого-цифровых устройств. М.: ДМК Пресс, 2012. 80 с. 12. Амосов В. В. Схемотехника и средства проектирования цифровых устройств. СПб.: БХВ Петербург, 2007. 542 с. 13. Банная В. Ф., Курова Ф. А. Основы электроники: Методическое пособие для студентов факультета точных наук и инновационных технологий. М.: РИЦ МГГУ им. М. А. Шолохова, 2013. 253 с. 14. Берикашвили В. Ш. Основы электроники. М.: Издательский центр Академия, 2013. 208 с. 15. Бишоп О. Электронные схемы и системы. М.: ДМК Пресс, 2016. 576 с. 16. Бладыко Ю. В. Сборник задач по электротехнике и электронике. Минск: Вышэйшая школа, 2012. 489 с. 17. Букреев И. Н., Горячев В. И., Мансуров Б. М. Микроэлектронные схемы цифровых устройств. М.: Техносфера, 2009. 712 с. 18. Джонс М. Х. Электроника - практический курс. М.: Техносфера, 2013. 512 с. 19. Китаев Ю. В. Основы цифровой техники: Учебное пособие. СПб.: СПбГУ ИТМО, 2007. 87 с. 20. Кучумов А. И. Электроника и схемотехника. М.: Гелиос APB, 2011. 336 с. 21. Марченко А. Л. Основы электроники: Учебное пособие для вузов. М.: ДМК Пресс, 2008. 296 с. 22. Марченко А. Л., Освальд С. В. Лабораторный практикум поэлектротехнике и электронике в среде Multisim. М.: ДМК Пресс, 2009. 1000 с. 23. Миленина С. А. Электротехника, электроника и схемотехника. М.: Юрайт, 2016. 400 с.
24. Миловзоров О. В., Панков И. Г. Электроника: Учебник для бакалавров. М.: Юрайт, 2013. 408 с. 25. Муханин Л. Г. Схемотехника измерительных устройств: Учебное пособие. СПб.: Лань, 2009. 288 с. 26. Новожилов О. П. Основы цифровой техники: Учебное пособие. М.: РадиоСофт, 2013. 528 с. 27. Прошин В. М., Ярочкина Г. В. Сборник задач по электротехнике: Учебное пособие. М.: Academia, 2015. 128 с. 28. Прянишников В. А. Электроника: Полный курс лекций. СПб.: КОРОНА принт, 2004. 416 с. 29. Ревич Ю. В. Занимательная электроника - 2-е издание. СПб.: БХВ Петербург, 2009. 722 с. 30. Сигов А. С., Нефедов В. И., Щука А. А. Электроника. М.: Абрис, 2011. 352 с.
Воспользуйтесь поиском по сайту: ©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|