Форум программистов, компьютерный форум CyberForum.ru

Lazarus

Войти
Регистрация
Восстановить пароль
 
BigTows
0 / 0 / 0
Регистрация: 26.09.2015
Сообщений: 26
#1

ASM Вставки iDIV - Lazarus

21.12.2016, 17:50. Просмотров 156. Ответов 4
Метки нет (Все метки)

Пишу
Pascal
1
NumX:=-40;
Assembler
1
2
3
4
MOV     EAX,NumX
MOV     ECX,4
IDIV    ECX
MOV     IntPart, EAX
Почему IntPart возвращает 1073741815?
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.12.2016, 17:50     ASM Вставки iDIV
Посмотрите здесь:

Delphi + asm(Вставки), строки. Delphi
Lazarus Ошибка при компилировании ассемблерной вставки
Assembler Построчное выполнение asm-вставки в сишный код
Builder C++ и asm вставки C++ Builder
Длинная арифметика (ASM-вставки в C++) Assembler
Как вывести в окно Edit результат работы asm вставки! Delphi
Div и IDiv Assembler
C++ Профилирование, C++ и вставки ASM, прошу совета
Вставки на asm DirectX
Free Pascal Asm-вставки не работают
Assembler Массив: вывести следующий элемент после максимального (asm-вставки)
Как установить обработчик прерывания внутри asm-вставки? Delphi

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
volvo
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
22477 / 14654 / 4174
Регистрация: 22.10.2011
Сообщений: 25,960
Записей в блоге: 4
21.12.2016, 19:07     ASM Вставки iDIV #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Assembler
1
2
3
MOV     EAX,NumX
CDQ ; Расширяем делимое на EDX:EAX
MOV     ECX,4
BigTows
0 / 0 / 0
Регистрация: 26.09.2015
Сообщений: 26
21.12.2016, 19:18  [ТС]     ASM Вставки iDIV #3
@volvo
Спасибо, пойду разбираться что такое CDQ
volvo
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
22477 / 14654 / 4174
Регистрация: 22.10.2011
Сообщений: 25,960
Записей в блоге: 4
21.12.2016, 19:24     ASM Вставки iDIV #4
BigTows, это инструкция, которая берет знаковый бит EAX, и заполняет им регистр EDX (так что если в EAX положительное значение - то EDX обнулится, а если отрицательное - то EDX заполнится 1-цами), чтобы пара EDX:EAX содержала нужное значение, которое ты занес в EAX.
BigTows
0 / 0 / 0
Регистрация: 26.09.2015
Сообщений: 26
21.12.2016, 19:26  [ТС]     ASM Вставки iDIV #5
Спасибо еще раз!)
Yandex
Объявления
21.12.2016, 19:26     ASM Вставки iDIV
Ответ Создать тему
Опции темы

Текущее время: 22:22. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru