Forth и другие саморасширяющиеся системы программирования Locations of visitors to this page
Текущее время: Вс фев 09, 2025 11:30

...
Google Search
Forth-FAQ Spy Grafic

Часовой пояс: UTC + 3 часа [ Летнее время ]




Ответить
Имя пользователя:
Заголовок:
Текст сообщения:
Введите текст вашего сообщения. Длина сообщения в символах не более: 60000

Размер шрифта:
Цвет шрифта
Настройки:
BBCode ВКЛЮЧЕН
[img] ВЫКЛЮЧЕН
[flash] ВЫКЛЮЧЕН
[url] ВКЛЮЧЕН
Смайлики ВЫКЛЮЧЕНЫ
Отключить в этом сообщении BBCode
Не преобразовывать адреса URL в ссылки
Вопрос
Теперь гостю придется вводить здесь пароль. Не от своей учетной записи, а ПАРОЛЬ ДЛЯ ГОСТЯ, получить который можно после регистрации на форуме через ЛС.:
Этот вопрос предназначен для выявления и предотвращения автоматических регистраций.
   

Обзор темы - Математика с "плавающей точкой". Помогите Plz!
Автор Сообщение
  Заголовок сообщения:  Re: Математика с "плавающей точкой". Помогите Plz!  Ответить с цитатой
Можно смотреть CORDIC, он для пары гиперболических функций как раз дает exp(x). Реализация на Форте сильно зависит от требований к разрядности. Если они невысоки, то можно поступить даже так:
exp(a+b) = exp(a) * exp(b)
Делаем таблицы экспонент, допустим на 256 значений каждая, по схеме "грубые-точные". Число раскладываем на "грубое + точное", т.е., например 8 старших разрядов и 8 младших.
Сообщение Добавлено: Чт окт 17, 2024 15:05
  Заголовок сообщения:  Re: Математика с "плавающей точкой". Помогите Plz!  Ответить с цитатой
Hishnik писал(а):
Как правило, в процессоре имеется exp(x), т.е. e^x
У возведения в степень есть свойство: x^y = e^y*ln x. Натуральный логарифм обычно тоже есть. Поэтому можно написать функцию pow(x,y), которая будет возвращать x^y. Единственная тонкость - придется брать натуральный логарифм, поэтому отрицательные x не подойдут.

Спасибо конечно!
Но хотелось бы увидеть реализацию на Форте.
ЗЫ помнится даже в DOS-овских (когда мат. сопроцессоры были редкостью) Фортах бывали программные реализации FP.
Сообщение Добавлено: Чт окт 17, 2024 14:33
  Заголовок сообщения:  Re: Математика с "плавающей точкой". Помогите Plz!  Ответить с цитатой
Как правило, в процессоре имеется exp(x), т.е. e^x
У возведения в степень есть свойство: x^y = e^y*ln x. Натуральный логарифм обычно тоже есть. Поэтому можно написать функцию pow(x,y), которая будет возвращать x^y. Единственная тонкость - придется брать натуральный логарифм, поэтому отрицательные x не подойдут.
Сообщение Добавлено: Чт окт 17, 2024 13:30
  Заголовок сообщения:  Re: Математика с "плавающей точкой". Помогите Plz!  Ответить с цитатой
Ilya писал(а):
Собственно в чём вопрос: тут у меня появилась одна задачка для МК и по обыкновению я пытаюсь её реализовать на stm32 + MecrispForth и всё бы ничего, но есть один "хитрый" датчик. Данные с датчика я конечно получаю (тут всё просто, АЦП), а вот с привидением полученных "попугаев" к человеческим величинам и самое "интересное" считать надо на МК - вот в этом и загвоздка! :(
Собственно в чём вопрос: благо, что основные функции по работе с FP реализованы, но мне требуется "возведение в степень" с показателем степени являющимся FP.
ЗЫ прошу ногами сильно не пинать! Да, с математикой у меня всё плохо :oops:

Может почитать совсем древнюю книгу, там есть похожие примеры Дьяконов В.П.Форт-системы программирования персональных ЭВМ.1992.djvu
Сообщение Добавлено: Чт окт 17, 2024 13:22
  Заголовок сообщения:  Математика с "плавающей точкой". Помогите Plz!  Ответить с цитатой
Собственно в чём вопрос: тут у меня появилась одна задачка для МК и по обыкновению я пытаюсь её реализовать на stm32 + MecrispForth и всё бы ничего, но есть один "хитрый" датчик. Данные с датчика я конечно получаю (тут всё просто, АЦП), а вот с привидением полученных "попугаев" к человеческим величинам и самое "интересное" считать надо на МК - вот в этом и загвоздка! :(
Собственно в чём вопрос: благо, что основные функции по работе с FP реализованы, но мне требуется "возведение в степень" с показателем степени являющимся FP.
ЗЫ прошу ногами сильно не пинать! Да, с математикой у меня всё плохо :oops:
Сообщение Добавлено: Чт окт 17, 2024 12:24

Часовой пояс: UTC + 3 часа [ Летнее время ]


cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
phpBB сборка от FladeX // Русская поддержка phpBB