User Tag List

Страница 64 из 171 ПерваяПервая ... 606162636465666768 ... ПоследняяПоследняя
Показано с 631 по 640 из 1705

Тема: Электроника БК 0010-01 vs ZX.

  1. #631

    Регистрация
    06.12.2017
    Адрес
    г. Москва
    Сообщений
    1,724
    Спасибо Благодарностей отдано 
    167
    Спасибо Благодарностей получено 
    406
    Поблагодарили
    257 сообщений
    Mentioned
    11 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Lethargeek Посмотреть сообщение
    а непонятно разве, что чем ближе к степени двойки, тем проще двоичная арифметика?
    что на практике позволяет 320 умножить на любое число быстрее, чем, допустим 219
    Зачем?
    manwe.pdp-11.ru

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

  3. #632

    Регистрация
    08.09.2005
    Адрес
    Воронеж
    Сообщений
    4,970
    Записей в дневнике
    3
    Спасибо Благодарностей отдано 
    320
    Спасибо Благодарностей получено 
    316
    Поблагодарили
    239 сообщений
    Mentioned
    11 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Manwe Посмотреть сообщение
    Зачем?


    - - - Добавлено - - -

    Цитата Сообщение от Manwe Посмотреть сообщение
    Это всё стереотипы инженеров. Реальным пользователям по фигу на степени двойки.
    реальным пользователям не пофиг на качество (в том числе и скорость, и размеры) программ

    Цитата Сообщение от Manwe Посмотреть сообщение
    Мне даже интересно: в современных компьютерах ты тоже серьёзно заморачиваешься, чтобы экран был кратен степеням двойки? А с какой кратностью? На 8 делиться? Или на 256? Или на 2?
    в современных проц не на 8 бит, аппаратные деления/умножения и дрова для вычислений на гпу

    Цитата Сообщение от Manwe Посмотреть сообщение
    31-цветный. У спрайтов гоблинов может быть другая расцветка. Зато скорость отрисовки высокая.
    не особо выше чем с маскированием, больше позволяет сэкономить память на маске

    - - - Добавлено - - -

    и падажжи, ты опять собрался пиксели-байты складывать словами, не заботясь о переносе?
    Прихожу без разрешения, сею смерть и разрушение...

  4. #633

    Регистрация
    01.03.2005
    Адрес
    Samara
    Сообщений
    4,867
    Спасибо Благодарностей отдано 
    328
    Спасибо Благодарностей получено 
    311
    Поблагодарили
    235 сообщений
    Mentioned
    12 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Manwe Посмотреть сообщение
    На БК 0010 умеют.
    Почему гоблины такие тормозные?
    3 гоблина, зайчик,рог. Чего оно так тормозит?
    С уважением,
    Jerri / Red Triangle.

  5. #634

    Регистрация
    06.12.2017
    Адрес
    г. Москва
    Сообщений
    1,724
    Спасибо Благодарностей отдано 
    167
    Спасибо Благодарностей получено 
    406
    Поблагодарили
    257 сообщений
    Mentioned
    11 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Погодите, у Z80 нет что ли табличной адресации? Чем вас так испугала таблица адресов строк, что вы готовы вместо обращения к таблице по индексу умножать на 256 и складывать с умножением на 64?
    manwe.pdp-11.ru

  6. #635

    Регистрация
    22.05.2011
    Адрес
    г. Дзержинск, Украина
    Сообщений
    6,829
    Спасибо Благодарностей отдано 
    483
    Спасибо Благодарностей получено 
    663
    Поблагодарили
    513 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    таблица в любом случае лишнее обращение к памяти
    чем меньше обращений к памяти
    тем быстрей код работает

    - - - Добавлено - - -

    Цитата Сообщение от Manwe Посмотреть сообщение
    умножать на 256
    как бы это элементарная операция для z80

    - - - Добавлено - - -

    Цитата Сообщение от Manwe Посмотреть сообщение
    Чем вас так испугала
    не то чтобы испугала
    просто результат виден...
    Последний раз редактировалось NEO SPECTRUMAN; 18.02.2020 в 20:11.

  7. #636

    Регистрация
    01.03.2005
    Адрес
    Samara
    Сообщений
    4,867
    Спасибо Благодарностей отдано 
    328
    Спасибо Благодарностей получено 
    311
    Поблагодарили
    235 сообщений
    Mentioned
    12 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от zx_ Посмотреть сообщение
    jerri, И всетаки мне показывали Loom. Сказали для БК0011. Блин

    вспоминай вот теперь
    Все правильно. Я посмотрел Loom я посмотрел обезяний остров.
    Разговор шел что кто-то делает Loom. И показали Остров Обезьян на БК.
    Мда. Жаль.
    С уважением,
    Jerri / Red Triangle.

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


  8. #637

    Регистрация
    06.12.2017
    Адрес
    г. Москва
    Сообщений
    1,724
    Спасибо Благодарностей отдано 
    167
    Спасибо Благодарностей получено 
    406
    Поблагодарили
    257 сообщений
    Mentioned
    11 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от NEO SPECTRUMAN Посмотреть сообщение
    не то чтобы испугала. просто результат виден...
    Так это результат применения совершенно других методов.

    Я говорю вот про какой метод: допустим в R1 у тебя координата X, в R2 координата Y (всегда умноженная на 2). Чтобы получить адрес точки по координатам X,Y ты делаешь
    Код:
    MOV ScreenLines(R2),R0
    ADD R1,R0
    Всё, теперь в R0 у тебя адрес точки. Хочешь - стирай её CLRB (R0). Хочешь, записывай число (например, данные из спрайта) MOVB (R3)+,(R0)+

    А теперь сравним с умножением на 320 (Y не умножен на 2):
    Код:
    SWAB R2
    MOV R2,R0
    ROR R0
    ASR R0
    ADD R2,R0
    ADD R1,R0
    SWAB R2
    Здесь мы делаем смелое предположение, что бит C заранее сброшен и координата Y настолько мала, что при умножении на 320 не получится переполнения. Если же учесть ещё и это, добавится ещё пара команд как минимум.

    Теперь посчитаем такты на БК 4 МГц.
    Цитата Сообщение от NEO SPECTRUMAN Посмотреть сообщение
    мы и так знаем что БКшники не умеют считать такты
    Да-да, конечно

    В медленной памяти:
    первая процедура 56 тактов
    вторая процедура 112 тактов

    В быстрой памяти:
    первая процедура 37.33 такта
    вторая процедура 58 тактов

    Внезапно 7 команд во второй программе - это 7 обращений к памяти. В то время как первая программа обращается к памяти 4 раза, причём первые два из них происходят за один цикл обработки и попадают в одно окно доступа к памяти.

    Ну ладно, а что же с умножением на 256?
    Код:
    MOV R2,R0
    SWAB R0
    ADD R1,R0
    48 в медленной памяти,
    25 в быстрой.

    В медленной памяти умножение на 256 получилось не сильно быстрей, чем по таблице (48 vs 56 ~ 17%). Любое отклонение от значения 256, будь оно хоть трижды "красивое" с точки зрения двоичной системы, с треском проигрывает табличному умножению. Любимая спектрумовская высота экрана 192 тоже проиграет.
    Последний раз редактировалось Manwe; 18.02.2020 в 21:45.
    manwe.pdp-11.ru

  9. #638

    Регистрация
    08.09.2005
    Адрес
    Воронеж
    Сообщений
    4,970
    Записей в дневнике
    3
    Спасибо Благодарностей отдано 
    320
    Спасибо Благодарностей получено 
    316
    Поблагодарили
    239 сообщений
    Mentioned
    11 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Manwe Посмотреть сообщение
    А теперь сравним с умножением на 320:
    1) две команды swab - лишние, пользуйся 16-битностью, пусть всегда будет Y*256
    2) прибавляют обычно сразу к адресу, а не переводят каждый раз из координат

    - - - Добавлено - - -

    Цитата Сообщение от Lethargeek Посмотреть сообщение
    пусть всегда будет Y*256
    или *64 если ADD быстрее ROR/ASR
    Прихожу без разрешения, сею смерть и разрушение...

  10. #639

    Регистрация
    06.12.2017
    Адрес
    г. Москва
    Сообщений
    1,724
    Спасибо Благодарностей отдано 
    167
    Спасибо Благодарностей получено 
    406
    Поблагодарили
    257 сообщений
    Mentioned
    11 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Lethargeek Посмотреть сообщение
    1) две команды swab - лишние, пользуйся 16-битностью, пусть всегда будет Y*256
    Убрал два SWAB, получилось 80 тактов. Всё равно больше чем 56.

    2) прибавляют обычно сразу к адресу, а не переводят каждый раз из координат
    Это принципиально не изменит результатов теста.

    Цитата Сообщение от Lethargeek Посмотреть сообщение
    или *64 если ADD быстрее ROR/ASR
    Тоже сильно не повлияет.
    manwe.pdp-11.ru

  11. #640

    Регистрация
    08.09.2005
    Адрес
    Воронеж
    Сообщений
    4,970
    Записей в дневнике
    3
    Спасибо Благодарностей отдано 
    320
    Спасибо Благодарностей получено 
    316
    Поблагодарили
    239 сообщений
    Mentioned
    11 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Manwe Посмотреть сообщение
    Убрал два SWAB, получилось 80 тактов. Всё равно больше чем 56.
    зато +440 байт, которые могут пригодиться в других табличных расчётах
    на машине, где всего-то 15.5 кб свободно
    а что в быстрой, кстати?

    - - - Добавлено - - -

    Цитата Сообщение от Lethargeek Посмотреть сообщение
    зато +440 байт
    + с 320 меньше мучиться с масштабированием/обрезкой при любимом занятии быкашников - конвертации

    - - - Добавлено - - -

    притом табличка для странных разрешений необходима даже в случаях, когда не нужна рекордная скорость, или тормозить будет всё
    Прихожу без разрешения, сею смерть и разрушение...

Страница 64 из 171 ПерваяПервая ... 606162636465666768 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. Ответов: 78
    Последнее: 28.02.2025, 21:19
  2. БК-0010.01 и я
    от Hunta в разделе БК-0010/0011
    Ответов: 59
    Последнее: 07.10.2018, 19:55
  3. БК-0010.01 и я
    от Hunta в разделе ДВК, УКНЦ
    Ответов: 2
    Последнее: 07.05.2018, 23:43
  4. Различия БК 0010 БК 0010Ш БК 0010-01
    от Mad Killer/PG в разделе БК-0010/0011
    Ответов: 12
    Последнее: 16.10.2011, 13:37
  5. [Питер] Продам Электроника Б3-18А, Электроника МК 52
    от russoturisto в разделе Барахолка (архив)
    Ответов: 6
    Последнее: 05.02.2010, 11:15

Ваши права

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