Требования к языкам программирования: JAVA, C++, python, assembler
Разработать программу на нескольких языках, реализующую следующую математическую функцию в цикле
и сравнить производительность в зависимости от языка.
Программа на ассемблере была переписана(в методичке приложены инсрукции с библиотекой для эмуляции на линуксе) для комфортной реализации на Windows, переписанная программа "объединяет" 231Lib.asm и SpeedTest2.asm, имеет прописанные функции.
Использловался компилятор: NASM
Для создания exe файла: GoLink
Для измерения времени работы использовался cmd скрипт
В репозитории находится папки проектов C#,C++,Python,Assembler.
Проекты C# и C++ разработаны в Visual Studia
Python разработан в Pycharm
-
Для реализации программы Assembler на Windows необходимо скачать один из компиляторов ассемблера(для этого задания использовался NASM) c официального сайта и линкер для создание exe
-
В Notepade++ был создан файл с расширением asm
-
После этого в CMD были прописаны следующие строки:
nasm -f win32 [Имя исходного файла].asm -o [Имя выходного(объектного) файла].obj
golink /entry:_start /console kernel32.dll user32.dll [Имя объектного файла].obj
Где:
- Ключ -o. Указание имени выходного файла
- Ключ -f. Указание формата выходного файла
- /entry:_start метка старта
- win32 параметр, указывающий на компиляцию под 32ух битную архитектуру
- /console указываем что мы компилируем консольное приложение
- kernel32.dll user32.dll библиотеки необходимые для создания исполняемого файла
Assembler
C++
C#
Python