Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Тема 6.11 Вызов ассемблерных функций из С++. Передача аргументов из С++ в язык ассемблер




Вызов функций 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 Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...