idiv blв переменную
f: float;т.е. как его "собрать" из частей?
Сообщение отредактировано: sheka -
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() ![]() |
![]() |
sheka |
![]()
Сообщение
#1
|
![]() Я. ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 809 Пол: Мужской Реальное имя: Саша Репутация: ![]() ![]() ![]() |
Каким образом можно получить результат
idiv blв переменную f: float;т.е. как его "собрать" из частей? Сообщение отредактировано: sheka - |
IUnknown |
![]()
Сообщение
#2
|
![]() Гуру ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 013 Пол: Мужской Ада: Разработчик Embarcadero Delphi: Сторонник Free Pascal: Разработчик Репутация: ![]() ![]() ![]() |
Что такое переменная типа Float? Нет в Паскале такого типа...
![]() Приводи чуть больше кода, что за операнды, что на что ты делишь и почему надо собирать из частей, когда можно либо потом перенести число в вещественную переменную, либо сразу задействовать сопроцессор и работать с вещественной переменной? |
sheka |
![]()
Сообщение
#3
|
![]() Я. ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 809 Пол: Мужской Реальное имя: Саша Репутация: ![]() ![]() ![]() |
Тяжелый вопрос. Все что могу сказать, так это то, что некоторое число (у меня оно хранится в ах) мне нужно поделить на другое число (не больше 8 бит). После выполнения деления хотелось бы сделать
mov f, регистр, но так же делать нельзя, ведь Алгоритм работы idiv: (Показать/Скрыть)
|
IUnknown |
![]()
Сообщение
#4
|
![]() Гуру ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 013 Пол: Мужской Ада: Разработчик Embarcadero Delphi: Сторонник Free Pascal: Разработчик Репутация: ![]() ![]() ![]() |
Цитата некоторое число (у меня оно хранится в ах) мне нужно поделить на другое число (не больше 8 бит). Поделил. Частное - в AL, остаток - в AH... Что именно надо занести в f, остаток или частное? Это все-таки целочисленное деление, не забыл? Еще раз: какого типа f? Я не знаю, что такое Float. Real - есть, Single/Double/Extended - есть. Больше ничего нет. |
sheka |
![]()
Сообщение
#5
|
![]() Я. ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 809 Пол: Мужской Реальное имя: Саша Репутация: ![]() ![]() ![]() |
f типа Real. занести полностью дробное число.
Вот пытался просто вывести на экран: q,w: shortint; выводит неправильный остаток |
IUnknown |
![]()
Сообщение
#6
|
![]() Гуру ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 013 Пол: Мужской Ада: Разработчик Embarcadero Delphi: Сторонник Free Pascal: Разработчик Репутация: ![]() ![]() ![]() |
выводит неправильный остаток "Не верю" (С)varКак и ожидалось, "result= 12.1", если поменять делитель на 11 - то выведет "result= 11.0". Что не так? Проверяй остальные этапы. Здесь все нормально. |
sheka |
![]()
Сообщение
#7
|
![]() Я. ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 809 Пол: Мужской Реальное имя: Саша Репутация: ![]() ![]() ![]() |
Это я, видите ли, захотел, чтобы мне остаток писало в десятичном виде, цифрами после запятой.
![]() А все же, как записать полученный результат в переменную типа Real? Это же можно как-то сделать? |
IUnknown |
![]()
Сообщение
#8
|
![]() Гуру ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 013 Пол: Мужской Ада: Разработчик Embarcadero Delphi: Сторонник Free Pascal: Разработчик Репутация: ![]() ![]() ![]() |
Можно. Делить не в целочисленных регистрах, а в сопроцессоре:
fild делимое_целое |
![]() ![]() |
![]() |
Текстовая версия | 8.09.2024 11:42 |