Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

 
 
Опции темы Поиск в этой теме Опции просмотра
  #5  
Старый 24.01.2014, 18:52
Аватар для Bargest
Bargest Bargest вне форума
Профессионал
 
Регистрация: 19.10.2010
Адрес: Москва
Сообщения: 2,390
Версия Delphi: XE3/VS12/FASM
Репутация: 14665
По умолчанию

Цитата:
По умолчанию ведь с пробелом выводится?
Фиг его знает. Не выводил.
Цитата:
Число 16 в 16-ричной системе счисленния будет как $10. В Precision записано 2, значит число состоит из двух цифр. В SignSpecialPlaces записано 1, значит одна из этих цифр используется для десятичной дроби. Получается, что число 1 было записано как "1,0".
Да уж, гениальная запись инта. Особенно напрягает, что в доке-то написано: SignSpecialPlaces: The sign bit (0 is positive, any other value negative). И ни слова про дроби.
Цитата:
Формата жопошнее чем BCD не видел в жизни.
Он удобен в одном применении - вывод. RTC-часики типа DS1307 в нем считают и отдают время. Учитывая, что работа с ними идет с МК, где деления нет и в помине, BCD очень удобно выводить на экран и вообще переводить в строку - не надо делить на 10. Тупо разбил маской на 2 части и прибавил 0x30 (хотя поскольку у меня в девайсе только цифры, даже прибавлять не надо, в моей кодировке всего 11 символов). Ну а у меня запись времени в часики идет с компа.
В итоге забил на этот глюкомодуль и сделал проще:
Код:
function toBCD(val:byte): byte;
begin
  if val > 99 then
     result := 0;
  else
     result := ((val div 10) shl 4) + (val mod 10);
end;
Поскольку мне достаточно кодировать 1 байт.
__________________
jmp $ ; Happy End!
The Cake Is A Lie.

Последний раз редактировалось Bargest, 24.01.2014 в 18:57.
Ответить с цитированием
 


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 00:39.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025