idiv asm-вставка, получить результат |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
idiv asm-вставка, получить результат |
sheka |
12.01.2012 17:40
Сообщение
#1
|
Я. Группа: Пользователи Сообщений: 809 Пол: Мужской Реальное имя: Саша Репутация: 11 |
Каким образом можно получить результат
idiv blв переменную f: float;т.е. как его "собрать" из частей? Сообщение отредактировано: sheka - 12.01.2012 17:40 |
IUnknown |
12.01.2012 19:37
Сообщение
#2
|
a.k.a. volvo877 Группа: Пользователи Сообщений: 1 013 Пол: Мужской Репутация: 627 |
Что такое переменная типа Float? Нет в Паскале такого типа...
Приводи чуть больше кода, что за операнды, что на что ты делишь и почему надо собирать из частей, когда можно либо потом перенести число в вещественную переменную, либо сразу задействовать сопроцессор и работать с вещественной переменной? |
sheka |
12.01.2012 20:08
Сообщение
#3
|
Я. Группа: Пользователи Сообщений: 809 Пол: Мужской Реальное имя: Саша Репутация: 11 |
Тяжелый вопрос. Все что могу сказать, так это то, что некоторое число (у меня оно хранится в ах) мне нужно поделить на другое число (не больше 8 бит). После выполнения деления хотелось бы сделать
mov f, регистр, но так же делать нельзя, ведь Алгоритм работы idiv: (Показать/Скрыть)
|
IUnknown |
12.01.2012 21:28
Сообщение
#4
|
a.k.a. volvo877 Группа: Пользователи Сообщений: 1 013 Пол: Мужской Репутация: 627 |
Цитата некоторое число (у меня оно хранится в ах) мне нужно поделить на другое число (не больше 8 бит). Поделил. Частное - в AL, остаток - в AH... Что именно надо занести в f, остаток или частное? Это все-таки целочисленное деление, не забыл? Еще раз: какого типа f? Я не знаю, что такое Float. Real - есть, Single/Double/Extended - есть. Больше ничего нет. |
sheka |
12.01.2012 22:00
Сообщение
#5
|
Я. Группа: Пользователи Сообщений: 809 Пол: Мужской Реальное имя: Саша Репутация: 11 |
f типа Real. занести полностью дробное число.
Вот пытался просто вывести на экран: q,w: shortint; выводит неправильный остаток |
IUnknown |
12.01.2012 22:22
Сообщение
#6
|
a.k.a. volvo877 Группа: Пользователи Сообщений: 1 013 Пол: Мужской Репутация: 627 |
выводит неправильный остаток "Не верю" (С)varКак и ожидалось, "result= 12.1", если поменять делитель на 11 - то выведет "result= 11.0". Что не так? Проверяй остальные этапы. Здесь все нормально. |
sheka |
12.01.2012 22:43
Сообщение
#7
|
Я. Группа: Пользователи Сообщений: 809 Пол: Мужской Реальное имя: Саша Репутация: 11 |
Это я, видите ли, захотел, чтобы мне остаток писало в десятичном виде, цифрами после запятой.
А все же, как записать полученный результат в переменную типа Real? Это же можно как-то сделать? |
IUnknown |
12.01.2012 22:50
Сообщение
#8
|
a.k.a. volvo877 Группа: Пользователи Сообщений: 1 013 Пол: Мужской Репутация: 627 |
Можно. Делить не в целочисленных регистрах, а в сопроцессоре:
fild делимое_целое |
Текстовая версия | 24.05.2024 13:05 |