Forth и другие саморасширяющиеся системы программирования Locations of visitors to this page
Текущее время: Пт окт 22, 2021 10:48

...
Google Search
Forth-FAQ Spy Grafic

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




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

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

Обзор темы - ограничения операции ABS (и NEGATE)
Автор Сообщение
  Заголовок сообщения:   Ответить с цитатой
Tема про 64-битные процессоры oтделена сюда: http://fforum.winglion.ru/viewtopic.php?t=2158
Сообщение Добавлено: Чт июн 25, 2009 21:32
  Заголовок сообщения:   Ответить с цитатой
Alexander писал(а):
Блин, Люди, а DNEGATE КТО-НИТЬ ВСПОМНИЛ?
просто вот он и должен переносить в старшую часть единицу, а так она должна остаться в флаге переноса и кто помнит?

8) вопрос-то в другом
вы же не станете автоматически увеличивать разрядную сетку :) (по крайней мере в форте)
Сообщение Добавлено: Чт июн 25, 2009 17:16
  Заголовок сообщения:   Ответить с цитатой
Блин, Люди, а DNEGATE КТО-НИТЬ ВСПОМНИЛ?
просто вот он и должен переносить в старшую часть единицу, а так она должна остаться в флаге переноса и кто помнит?
Сообщение Добавлено: Ср июн 24, 2009 23:45
  Заголовок сообщения:   Ответить с цитатой
В Белоруссии спросите... :)
Сообщение Добавлено: Вт июн 23, 2009 11:18
  Заголовок сообщения:   Ответить с цитатой
Mihail писал(а):
В документации обычно отмечен диапазон знаковых чисел от -2147483648 до 2147483647.

Кстати не такая уж большая цифра..
Была на эту тему хохма, что мол 64 бита на персоналках решили ввести когда стало невозможно 32 битами представить капитал БГ с достаточной точностью :D
Блин, где российские 64-битовые процессоры? :))
Сообщение Добавлено: Вт июн 23, 2009 01:47
  Заголовок сообщения:   Ответить с цитатой
mOleg писал(а):
ама проблема лежит в том, что после операции в краевом случае значение не помещается в разрядную сетку, а значит, это либо фича, либо баг в зависимости от идеалогии языка


В документации обычно отмечен диапазон знаковых чисел от -2147483648 до 2147483647.
Т.е. за изменения знака -2147483648 разработчики ответственности не несут.
Сообщение Добавлено: Вт июн 23, 2009 00:16
  Заголовок сообщения:   Ответить с цитатой
Проблема лежит глубже языков программирования. Это вопросы представления чисел, они решаются сначала на "понятийном" уровне. Как решим трактовать 0x80000000, так и будет. А реализации языка останется это решение претворить в жизнь.
Сообщение Добавлено: Пн июн 22, 2009 12:40
  Заголовок сообщения:   Ответить с цитатой
Lethargeek писал(а):
Просто считайте результат беззнаковым числом

это в общем логично, но так не делают ни в Сях, ни в Форте обычно 8( собственно поэтому вопрос и возник.
Сообщение Добавлено: Пн июн 22, 2009 12:31
  Заголовок сообщения:   Ответить с цитатой
Просто считайте результат беззнаковым числом ;)
Сообщение Добавлено: Пн июн 22, 2009 05:11
  Заголовок сообщения:   Ответить с цитатой
ну, что ж,
сама проблема лежит в том, что после операции в краевом случае значение не помещается в разрядную сетку, а значит, это либо фича, либо баг в зависимости от идеалогии языка, потому что один ЯП может автоматом повысить разрядность числа, а другой проигнорировать сей факт.
Посему пока для того, чтобы пользователи сей факт могли почерпнуть из документации, она (дока) дополнена.
С другой стороны рука тянется написать 0x7FFFFFFF AND (то есть получить переполнение разрядной сетки), но это тоже будет фича.
Сообщение Добавлено: Пн мар 30, 2009 01:53
  Заголовок сообщения:   Ответить с цитатой
Ситуация неисправима.

Есть 2<sup>32</sup> чисел, кодируемых 32-битным значением.
Из них 1 - ноль, 2<sup>31</sup> положительных и отрицательных взаимно "обратных" по операции NEGATE пар, и оставшееся одно число, не имеющее такой пары... в принципе...

Так что, сей факт надо просто знать и понимать, когда в программе следует опасаться его проявления в виде глюка. Так же, как опасаться глюков от переполнения при сложении/вычитании/умножении/делении и т.д. и т.п.
Сообщение Добавлено: Пн мар 30, 2009 01:48
  Заголовок сообщения:  ограничения операции ABS (и NEGATE)  Ответить с цитатой
вот, столкнулся с тем, что ABS на значении 0x80000000(максимальное отрицательное число) ничего не делает, а по логике бы должен оказаться 0? В стандарте об этом ничего не сказано, и в Форт-системах тоже. Вот и думаю, описать ли это как фичу, либо исправлять ситуацию. По логике должно получиться число 1.0 (двойной длины) а значит 0 в младшем разряде
Сообщение Добавлено: Вс мар 29, 2009 23:24

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


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