User Tag List

Показано с 1 по 10 из 15

Тема: Часы реального времени.

Древовидный режим

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #12

    Регистрация
    11.09.2009
    Адрес
    Москва
    Сообщений
    4,805
    Спасибо Благодарностей отдано 
    9
    Спасибо Благодарностей получено 
    147
    Поблагодарили
    78 сообщений
    Mentioned
    16 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    .

    Чтобы пользователь мог при необходимости легко определить текущее значение E time, FILE time или Unix time или изменить хранимую дату на основе этих значений - логично добавить в нулевой блок HClock поля ED ( 2 слова == Int32 ), E0 ( 3 слова == Int48 ) и LeapSeconds ( 1 слово == Int16 ), содержащие номер дня от начала эры, число секунд от начала эры и число високосных секунд UTC. Поля ED и E0 доступны для чтения и записи, поле LS - только для чтения.


    000034 000036 - ED - Int32 - Номер дня от начала эры ( -1 == 31.12.-1 | 1 == 01.01.01 ) в диапазоне: -106751992 .. +106751992 или 0, если контроллер не поддерживает это поле или оно не должно измениться при записи. При записи игнорируется, если хотя бы одно из предыдущих полей даты ( год, месяц, день ) было записано.

    000040 000042 000044 000046 - E0 - Int64 - Число секунд с момента начала эры ( -1 == 31.12.-1 23:59:59 | 0 == 01.01.01 00:00:00 | 1 == 01.01.01 00:00:01 ) в диапазоне: -9223372036854 .. +9223372036854 или 0x8000000000000000 ( 0x0000 0x0000 0x0000 0x8000 ), если контроллер не поддерживает это поле или оно не должно измениться при записи. При записи игнорируется, если хотя бы одно из предыдущих полей даты или времени ( кроме поля номера миллисекунды в текущей секунде ) было записано.

    000050 - LS - Read Only - Величина високосной коррекции секунд в значении полей E0 и E6. Если контроллер рассчитывает значения E0 и E6 без учёта високосных секунд UTC - это поле должно быть нулевым.

    ...

    Для полноты спецификации полезно также иметь 64-разрядное поле E6, содержащее число микросекунд с момента начала эры.


    000052 000054 000056 000060 - E6 - Int64 - Число микросекунд с момента начала эры в диапазоне: -0x7FFFFFFFFFFF .. +0x7FFFFFFFFFFF или 0x8000000000000000 ( 0x0000 0x0000 0x0000 0x8000 ), если контроллер не поддерживает это поле или оно не должно измениться при записи. При записи игнорируется, если хотя бы одно из предыдущих полей даты или времени было записано.
    Последний раз редактировалось Patron; 28.10.2017 в 20:53.

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Ответов: 190
    Последнее: 10.05.2018, 18:52
  2. PseudoTR-DOS для NEMO IDE без реального TR-DOS %)
    от fan в разделе Внешние накопители
    Ответов: 14
    Последнее: 15.01.2010, 16:01
  3. Ответов: 74
    Последнее: 09.07.2009, 12:39
  4. Spectrum как система реального времени
    от King of a S†ellar War в разделе ZX Концепции
    Ответов: 55
    Последнее: 21.12.2008, 19:57

Ваши права

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