Отладка программ с FPU - Assembler
Формулировка задачи:
Добрый день! Я тут немного запарился по поводу FPU и его использования.. Если честно особого практического смысла я в нем не вижу и воспринимаю как "высокоуровневое" дополнение к основным функциям процессора, так как, по моему вещественные числа имеют ценность только с точки зрения математики и различных прикладных программ. Однако, стремясь узнать все и обо всем, я начал рассматривать этот раздел. Пытаюсь придумать программку, чтобы затестить свои знания, но сразу сталкиваюсь с вопросом: как мне ее отладить?? Насколько понимаю, мою любимый AFD здесь не поможет.. Посоветуйте что-нить!))
Решение задачи: «Отладка программ с FPU»
textual
Листинг программы
uses System.SysUtils, VCL.Dialogs; function bswap(X: Cardinal): Cardinal; asm bswap X mov eax,X end; begin ShowMessage(IntToHex(bswap($12345678), 8)) end.
Объяснение кода листинга программы
Список элементов:
- Заголовок
uses System.SysUtils, VCL.Dialogs;- указывает на использование необходимых модулей для работы с системой и диалоговым окном. - Функция
bswap(X: Cardinal): Cardinal;- объявление функции, которая будет менять местами байты в числе. asm- директива, указывающая на асинхронный код.bswap X- ассемблерная инструкция, которая меняет местами байты числа X.mov eax,X- ассемблерная инструкция, которая сохраняет результат в регистре EAX.ShowMessage(IntToHex(bswap($12345678), 8))- вызов функции вывода диалогового окна с сообщением, где значение числа $12345678 после применения функции bswap преобразуется в шестнадцатеричную систему счисления.end.- завершающая точка программы.