Христианская проза
Христианская поэзия
Путевые заметки, очерки
Публицистика, разное
Поиск
Христианская поэзия
Христианская проза
Веб - строительство
Графика и дизайн
Музыка
Иконопись
Живопись
Переводы
Фотография
Мой путь к Богу
Обзоры авторов
Поиск автора
Поэзия (классика)
Конкурсы
Литература
Живопись
Киноискусство
Статьи пользователей
Православие
Компьютеры и техника
Загадочное и тайны
Юмор
Интересное и полезное
Искусство и религия
Поиск
Галерея живописи
Иконопись
Живопись
Фотография
Православный телеканал 'Союз'
Максим Трошин. Песни.
Светлана Копылова. Песни.
Евгения Смольянинова. Песни.
Иеромонах РОМАН. Песни.
Жанна Бичевская. Песни.
Ирина Скорик. Песни.
Православные мужские хоры
Татьяна Петрова. Песни.
Олег Погудин. Песни.
Ансамбль "Сыновья России". Песни.
Игорь Тальков. Песни.
Андрей Байкалец. Песни.
О докторе Лизе
Интернет
Нужды
Предложения
Работа
О Причале
Вопросы психологу
Христианcкое творчество
Все о системе NetCat
Обсуждение статей и программ
Последние сообщения
Полезные программы
Забавные программки
Поиск файла
О проекте
Рассылки и баннеры
Вопросы и ответы
 
 Домой  Форумы / Обсуждение статей и программ / Как произвести двоичный ввод-вывод чисел? Войти на сайт / Регистрация  Карта сайта     Language По-русски По-английски
Обсуждение статей
Консультации по программе NetMap
Консультации по программе CreateSFX
Консультации по классу cBigNumber
Консультации по шаблонам динамических массивов

Дом сохранения истории Инрог


Интересно:
Рекомендуем посетить:

 
Как произвести двоичный ввод-вывод чисел?
Добавлено: 2005-10-31 22:31:00   Как произвести двоичный ввод-вывод чисел?
Гость



Ответить | Цитировать
Добавлено: 2005-10-31 22:41:18
Raul

Зарегистрирован(а): 17.03.2010

Сообщений: 101 (просмотреть)
Методов двоичного ввода-вывода в классе нет, но зато есть универсальные методы length() и code(), которые дают доступ к внутреннему представлению числа.

Метод length() выдает число слов типа long в дополнительном коде, а метод code() выдает константный указатель на массив слов типа long с дополнительным кодом, где младшее слово имеет индекс 0. Указатель действителен до тех пор, пока над числом не выполняются арифметические операции или операции распределения памяти.

Для доступа к коду по записи преобразуйте указатель code() в long*. Если требуется изменить изменить число слов, запишите его в элемент с индексом -1. Число слов можно уменьшать до 1 или увеличивать в пределах участка памяти, предварительно распределяемого под число методом expand(). Для лучшей производительности рекомендуется нормализовать код так, чтобы он имел минимально необходимое число слов. Нормализацию можно обеспечить вызовом метода fit().

Вот в качестве примера код для присваивания беззнакового значения, большего LONG_MAX:
Код:

cBigNumber a; // Неограниченное число.
unsigned long n = 0xFFFFFFFFUL; // Беззнаковое число,
{ // значение приведено как пример.
a.expand (2); // Память под два слова.
long *pa = (long*) a.code(); // Указатель для модификации кода.
pa [0] = n; // Присвоение числа.
pa [1] = 0; // Нулевое слово для знака.
pa [-1] = 2; // Число слов.
a.fit(); // Нормализация.
} // Удалить указатель.


Ответить | Цитировать




Домой написать нам
Дизайн и программирование
N-Studio
Причал: Христианское творчество, психологи Любая перепечатка возможна только при выполнении условий. Несанкционированное использование материалов запрещено. Все права защищены
© 2024 Причал
Наши спонсоры: