Необычная( для меня) задачка - Assembler
Формулировка задачи:
Задание
Написать программу на языке ассемблер для решения квадратного уравнения.
Но использовать assembler'ную вставку в си.
И в си использовать только ввод и вывод.
В ассемблерной вставке использовать только регистры там)
Решение задачи: «Необычная( для меня) задачка»
textual
Листинг программы
#include "stdafx.h" #include <stdio.h> #include <conio.h> #include <iostream> int main(int argc, char* argv[]) { float a,b,c; printf("vvedite a="); scanf("%f",&a); _asm { mov eax, a; push eax; fild dword ptr [esp] fsqrt fistp dword ptr [esp] pop eax; mov a, eax; } printf("%f", a); getch(); return 0; }
Объяснение кода листинга программы
- Включаются необходимые заголовочные файлы
- Определяются переменные a, b, c типа float
- Выводится сообщение для ввода значения переменной a
- Считывается значение переменной a с помощью функции scanf
- В блоке _asm происходит вычисление квадратного корня от значения переменной a
- Результат вычисления сохраняется в переменной a
- Выводится значение переменной a с помощью функции printf
- Ожидается нажатие клавиши с помощью функции getch
- Программа завершается с кодом 0
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д