User Tag List

Страница 17 из 51 ПерваяПервая ... 131415161718192021 ... ПоследняяПоследняя
Показано с 161 по 170 из 501

Тема: Тема для всяких глупых вопросов

  1. #161

    Регистрация
    09.09.2018
    Адрес
    г. Саратов
    Сообщений
    438
    Спасибо Благодарностей отдано 
    144
    Спасибо Благодарностей получено 
    115
    Поблагодарили
    50 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Sandro Посмотреть сообщение
    Ну вот Unix date считается с 1972 года, и в 2036 юниксовы года закончатся. Это не решение проблемы, а заметание мусора под ковёр. Лучше всё-таки хранить дату, как есть.
    Как раз решение вопроса. Вот из rexx:
    (BORNDATE - дата рождения): возвращает количество полных дней (не включая текущий день), начиная от даты рождества Христова (Январь 1, 0001), включая её. Результат выдается в формате ДДДДДД (без начальных нулей). Это формат удобен тем, что выражение вида DATE(B)//7 в качестве результата будет всегда иметь число из диапазона 0-6, где 0 соответствует понедельнику, а 6 - воскресенью (то есть, по сути, является номером дня недели). Поскольку дата '1 Января 0001 г.' основана на Григорианском календаре, который не существовал до 1582 года, количество дней, истёкших ‘от рождества Христова’, вычисляется следующим образом: 365 дней в году плюс 1 дополнительный день на каждые четыре года (исключая годы, символизирующие век: 100, 200 и т.д.) плюс 1 дополнительный день на каждый 400-ый год (400, 800 и т.д.). В расчёт не принимаются ошибки в существовавшей ранее календарной системе, которые и привели к созданию Григорианского календаря.

    Сегодня идёт 738143 день. И вообще ни каких проблем, и ни когда (во вменяемом будущем) их не будет. 6 байт или 3 байта + очень лёгкие расчёты с ней.
    Последний раз редактировалось tae1980; 20.12.2021 в 15:44.

  2. #162

    Регистрация
    03.07.2021
    Адрес
    г. Кировск
    Сообщений
    922
    Спасибо Благодарностей отдано 
    87
    Спасибо Благодарностей получено 
    211
    Поблагодарили
    156 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от tae1980 Посмотреть сообщение
    6 байт или 3 байта + очень лёгкие расчёты с ней
    Да, но тут задается лишь дата, без часов, минут и так далее. Юниксовый отсчет дается с точностью до секунды, а это (в день) 86400 тиков, что минимум + еще 2 байта.
    Итого по критически важному (в те древние времена) количеству байт проигрываем юниксовому варианту. Расширив который на байт, можно было "уйти" в вечность.

  3. #163

    Регистрация
    09.09.2018
    Адрес
    г. Саратов
    Сообщений
    438
    Спасибо Благодарностей отдано 
    144
    Спасибо Благодарностей получено 
    115
    Поблагодарили
    50 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от reddie Посмотреть сообщение
    Да, но тут задается лишь дата, без часов, минут и так далее.
    Но, мы про дату и говорили.

    Время так же задаётся числом секунд прошедших с полуночи (86400). Это ты указал правильно. Плюс ещё 3 байта. Итого получаем 6 байт и минимум гемора.
    Но непосредственно в rexx'се, ситуация вообще другая, так как ему глубоко плевать на байты, он хранит все цифра в текстовом формате. Да, с точки зрения экономии - это кошмар, но зато можно, например, посчитать число пи до абсолютно любого знака (при желании хоть миллионного - дурная голова рукам покоя не даёт). Главное, что бы хватило физической памяти. Про то сколько он это будет делать - даже думать не хочу. И не только посчитать, но и корректно выполнять арифметические действии с ним. При этом положив болт и на разрядность проца.

    Разные задача, разные решения. В настоящее время, лично мне, подход rexx гораздо ближе.
    Последний раз редактировалось tae1980; 20.12.2021 в 17:09.

  4. #164

    Регистрация
    09.09.2018
    Адрес
    г. Саратов
    Сообщений
    438
    Спасибо Благодарностей отдано 
    144
    Спасибо Благодарностей получено 
    115
    Поблагодарили
    50 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Касаемо даты.
    Можно хранить число дней прошедших с начала текущего века. Получаем максимальное значение 365*100=36500. То есть влазим в 2 байта. А с двумя байтами работать у нас проще. А числа более максимально возможного числа можно рассматривать как даты в предыдущем столетии от начала нынешного (так сказать "до нашей эры"). Это ~29035 дней, которых хватит на 79 лет.
    Для отдельных случаев можно добавлять третий байт - номер столетия. Думаю лучше всего -128...+127. Видеться, что этого периода хватит на все вменяемые даты.

    А если время округлить до минут, то в сутках 1440 минут, так же для работы с ним хватит 2-х байт.
    Нужны секунды, задействуем ещё один байт. Но храним там число секунд 0-59.

    Такая схема избавит от необходимости иметь процедуры арифметики трёх байтных чисел.
    Последний раз редактировалось tae1980; 22.12.2021 в 23:32.

  5. #165

    Регистрация
    23.04.2020
    Адрес
    г. Тотьма
    Сообщений
    907
    Спасибо Благодарностей отдано 
    273
    Спасибо Благодарностей получено 
    343
    Поблагодарили
    182 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    1. Как в sjasm zoom сделать такую вещь:
    Код:
    ORG ADR1 [,ADR2]
    
    ADR1 - где будет работать
    ADR2 - куда положить код
    2. Как делают проигрывание звука через ЦАП во время вывода картинки? А одновременно с чтением с карты? Через обычный ковокс. Или такое мало реально? Я думаю сложно.

    Скрытый текст


    https://drive.google.com/drive/folde...xZ83juCuaBe32I

    Scorpion ZS 256 Turbo+/GMX 2MB/SMUC v1.3 OP/CF-IDE 2GB/TS ARM/Covox #DD/FDD 5'25/FDD 3'5/AT Kbrd & Mouse Ctrl v2.5/Universal PS/2 Kbrd Ctrl/ZX WiFi
    Leningrad 1/Sega Joy Adapter
    DivGMX
    ZX Spectrum +2A
    ZX Evolution rev. C

    TCK Computer 486DX2-66/512K Tridend 9000i/8MB SIMM72/CF-IDE 512MB/ESS 1869/CNet CN200/FDD 5'25/FDD 3'5
    [свернуть]

  6. #166

    Регистрация
    05.09.2007
    Адрес
    Орск
    Сообщений
    1,071
    Спасибо Благодарностей отдано 
    269
    Спасибо Благодарностей получено 
    1,245
    Поблагодарили
    370 сообщений
    Mentioned
    18 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Код:
    org ADR2
    phase ADR1
    ....
    unphase

    Эти 2 пользователя(ей) поблагодарили LW за это полезное сообщение:

    izzx(26.12.2021), Ped7g(22.01.2022)

  7. #166
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  8. #167

    Регистрация
    03.07.2021
    Адрес
    г. Кировск
    Сообщений
    922
    Спасибо Благодарностей отдано 
    87
    Спасибо Благодарностей получено 
    211
    Поблагодарили
    156 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от izzx Посмотреть сообщение
    2. Как делают проигрывание звука через ЦАП во время вывода картинки?
    Тут основная задача - равномерный вывод данных в ЦАПы, чтоб избежать т.н. джиттера. На компах, где есть всякие дма-режимы и прерывания с высокой частотой, это не проблема, но на Спектруме (стандартном) ничего этого нет. Всё задержки/растактовки нужно высчитывать и реализовывать кодом. Не прям до такта, но с более-менее выравнивать вполне можно.
    Кстати, используя GS как ЦАП, задача упрощается, но надо писать свою загружаемую в его память процедуру. Которая будет по внутренним прерываниям читать порт, что даст вполне удобные тайминги. Максимальная частота, соответственно, 37 КГц, либо с делителями на 2, 4 и так далее. Остаётся вовремя подкидывать данные в порт, следя за их принятием. Для варианта с подгрузкой потока с быстрых носителей - самое то.

    Этот пользователь поблагодарил reddie за это полезное сообщение:

    izzx(27.12.2021)

  9. #168

    Регистрация
    27.01.2005
    Сообщений
    924
    Спасибо Благодарностей отдано 
    28
    Спасибо Благодарностей получено 
    193
    Поблагодарили
    154 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Sandro Посмотреть сообщение
    Ну вот Unix date считается с 1972 года, и в 2036 юниксовы года закончатся. Это не решение проблемы, а заметание мусора под ковёр. Лучше всё-таки хранить дату, как есть.
    Сейчас хранят не в 32 битах, а в 64х битах unix time. И на ближайшие миллиарды лет проблема решена

    Кстати, юникс тайм хранит и отрицательные значения

  10. #169

    Регистрация
    20.01.2010
    Адрес
    г. Зеленоград
    Сообщений
    600
    Спасибо Благодарностей отдано 
    28
    Спасибо Благодарностей получено 
    231
    Поблагодарили
    123 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    2. Как делают проигрывание звука через ЦАП во время вывода картинки? А одновременно с чтением с карты? Через обычный ковокс. Или такое мало реально? Я думаю сложно.[/QUOTE]

    Да вот так и делают. Good Apple выводит звук одновременно со чтением с карты. А The Craft ...

    Да блин. У неё вообще ничего нет. Звукового адаптера у неё нет. Видеоадаптера у ней нет. У неё вообще ничего нет, кроме 20 МГц микроконтроллера и нескольких резисторов.

    https://www.youtube.com/watch?v=sNCqrylNY-0

  11. #170

    Регистрация
    03.07.2021
    Адрес
    г. Кировск
    Сообщений
    922
    Спасибо Благодарностей отдано 
    87
    Спасибо Благодарностей получено 
    211
    Поблагодарили
    156 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Sandro Посмотреть сообщение
    У неё вообще ничего нет, кроме 20 МГц микроконтроллера и нескольких резисторов.
    20 МГц AVR довольно мощная штука, ей вполне по силам программно всё это делать. Спектрум да и БК хоть до условных двухсот разогнать, но тв-картинку они генерить если и смогут, то без другого функционала. Программисту всё равно зачёт, хотя видос уже довольно древний боян.
    Good Apple хороший пример, но большая часть времени у Manwe ушла, подозреваю, на подготовку данных для вывода =)
    Там всё же не полнокадровые 30 фпс, что физически на БК невозможно, а смена кусков кадра. Просчитать это всё и совместить массив видеоданных с аудио, пусть и заранее, тоже работка не на пять минут.

Страница 17 из 51 ПерваяПервая ... 131415161718192021 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. Ответов: 42
    Последнее: 05.05.2021, 17:01
  2. Общая тема для моих вопросов (ассемблер и zx spectrum)
    от moronizzz в разделе Для начинающих
    Ответов: 17
    Последнее: 23.08.2016, 18:13
  3. тема для мобильного....
    от rasmer в разделе Музыка
    Ответов: 0
    Последнее: 18.01.2008, 20:25

Метки этой темы

Ваши права

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