User Tag List

Страница 12 из 113 ПерваяПервая ... 8910111213141516 ... ПоследняяПоследняя
Показано с 111 по 120 из 1128

Тема: ЭТЮДЫ

  1. #111

    Регистрация
    08.10.2005
    Адрес
    Москва
    Сообщений
    14,378
    Спасибо Благодарностей отдано 
    1,697
    Спасибо Благодарностей получено 
    2,217
    Поблагодарили
    871 сообщений
    Mentioned
    69 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    Цитата Сообщение от psb Посмотреть сообщение
    странный какой-то код... как минимум он не реюзабельный - кто будет hl каждый раз перезагружать?
    Очевидно, там имелось ввиду:
    pop hl
    add hl,de

  2. #112

    Регистрация
    18.02.2005
    Адрес
    Набережные Челны
    Сообщений
    1,574
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    3
    Поблагодарили
    2 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от psb Посмотреть сообщение
    странный какой-то код... как минимум он не реюзабельный - кто будет hl каждый раз перезагружать?
    вот приводился нормальный реюзабельный код:
    смотрите внимательно, в HL текущий адрес, в DE грузится разница между пиксельными линиями (обычно 256, иногда [32-8*256]), разница добавляется и поехали.

    Цитата Сообщение от psb Посмотреть сообщение
    вот приводился нормальный реюзабельный код:
    Код:
    POP DE
    LD A,E
    ADD A,C
    LD E,A
    здесь рег.С=Х, одна табличка 384 байта, 22 такта.
    Ну уж разберись что у тебя к чему, и почему тут лучше, если оно длиннее в тактах и в коде. Тут ещё и регистр C (или любой другой) надо постоянно удерживать значением X. А в моём случае нет. Хотя в процессе портится DE.

    Цитата Сообщение от Titus Посмотреть сообщение
    Очевидно, там имелось ввиду:
    pop hl
    add hl,de
    Нет нет читайте код внимательнее DE добавлялось к HL, получаем down hl.
    Если я возьму со стека HL, то это будет не down hl, потому что я его потру. А если это down de, тогда надо ещё установить DE. в общем не смущайте общественность.
    Биты рулят лучше байтов, байты рулят шустрее!
    View, Звук, Цвет

  3. #113

    Регистрация
    08.10.2005
    Адрес
    Москва
    Сообщений
    14,378
    Спасибо Благодарностей отдано 
    1,697
    Спасибо Благодарностей получено 
    2,217
    Поблагодарили
    871 сообщений
    Mentioned
    69 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    Цитата Сообщение от GriV Посмотреть сообщение
    Нет нет читайте код внимательнее DE добавлялось к HL, получаем down hl.
    Если я возьму со стека HL, то это будет не down hl, потому что я его потру. А если это down de, тогда надо ещё установить DE. в общем не смущайте общественность.
    Практически одно и то же. Только в одном случае со стека снимаем смещение и прибавляем его к hl, а в другом, снимаем новый hl, и прибавляем к нему смещение в строке de. Преимущество первого способа, что он не првязан к конкретным адресам, и можно портить de.

  4. #114

    Регистрация
    25.01.2005
    Адрес
    Miass, Chelyabinsk region
    Сообщений
    4,094
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    2
    Поблагодарили
    2 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от GriV Посмотреть сообщение
    Ну уж разберись что у тебя к чему, и почему тут лучше, если оно длиннее в тактах и в коде.
    +один свободный регистр
    но в целом вполне себе веселая тема

  5. #115

    Регистрация
    18.02.2005
    Адрес
    Набережные Челны
    Сообщений
    1,574
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    3
    Поблагодарили
    2 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Titus Посмотреть сообщение
    Практически одно и то же. Только в одном случае со стека снимаем смещение и прибавляем его к hl, а в другом, снимаем новый hl, и прибавляем к нему смещение в строке de. Преимущество первого способа, что он не првязан к конкретным адресам, и можно портить de.
    Не одно и тоже. если у тебя ведущий регистр DE, то ты должен будешь в него переместить содержимое, хотя бы с помощью ex de,hl. А это уже доп. 4 такта. За что боролись?

    Цитата Сообщение от psb Посмотреть сообщение
    но в целом вполне себе веселая тема
    Ну так то да
    Биты рулят лучше байтов, байты рулят шустрее!
    View, Звук, Цвет

  6. #116

    Регистрация
    25.01.2005
    Адрес
    Miass, Chelyabinsk region
    Сообщений
    4,094
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    2
    Поблагодарили
    2 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от GriV Посмотреть сообщение
    Не одно и тоже.
    одно и то же не надо ex de,hl.

  7. #117

    Регистрация
    26.03.2008
    Адрес
    Питкяранта
    Сообщений
    1,822
    Спасибо Благодарностей отдано 
    274
    Спасибо Благодарностей получено 
    122
    Поблагодарили
    95 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от GriV Посмотреть сообщение
    За базар ответишь? :-) зря человека обижаешь, очень отзывчивый он.
    Пожалуй я невнятно выразился.
    Совсем не собирался никого обижать.
    Имел в виду не делится ПОНЯТНЫМ ДЛЯ НЕОТЕСАНОЙ ДЕРЕВНИ ОБРАЗОМ.
    Ничерта я не понимаю в его сорцах.
    Для образованных людей возможно всё ясно и понятно.

  8. #118

    Регистрация
    18.02.2005
    Адрес
    Набережные Челны
    Сообщений
    1,574
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    3
    Поблагодарили
    2 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Destr Посмотреть сообщение
    Пожалуй я невнятно выразился.
    Совсем не собирался никого обижать.
    Имел в виду не делится ПОНЯТНЫМ ДЛЯ НЕОТЕСАНОЙ ДЕРЕВНИ ОБРАЗОМ.
    Ничерта я не понимаю в его сорцах.
    Для образованных людей возможно всё ясно и понятно.
    А ну это да но тут как говорится - кесарю кесарево Я тоже не понимаю Но на вопросы он так-то отвечает
    Биты рулят лучше байтов, байты рулят шустрее!
    View, Звук, Цвет

  9. #119

    Регистрация
    29.12.2010
    Адрес
    Москва
    Сообщений
    1,869
    Спасибо Благодарностей отдано 
    142
    Спасибо Благодарностей получено 
    110
    Поблагодарили
    66 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Вот задачка из реальной жизни, в "Эрудите" понадобилась:

    Необходимо скопировать от 2 до 8 байт, заранее количество неизвестно (находится в аккумуляторе), из области начинаемой по адресу addr1 в область по адресу addr2, но так, чтобы в области addr2 байты шли в обратном порядке. Например, было с адреса addr1: 1 2 3 4 5 6. Нужно сделать с адреса addr2: 6 5 4 3 2 1. Оптимизировать по быстродействию.
    Сейчас кроме банального ld a,(hl); ld (de),a ничего оптимальнее не придумал. Но чую, что можно как-то быстрее, через стек или регистры (благо немного значений).

  10. #120

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

    По умолчанию

    а тут и нечего делать особенно изза разворота
    С уважением,
    Jerri / Red Triangle.

Страница 12 из 113 ПерваяПервая ... 8910111213141516 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. Этюды: как бы написать поизящнее.
    от AndTorp в разделе Программирование
    Ответов: 5
    Последнее: 17.03.2008, 00:43
  2. Ответов: 0
    Последнее: 18.08.2006, 22:40
  3. Этюды: печать шрифтом 5x5...
    от breeze в разделе Программирование
    Ответов: 12
    Последнее: 27.03.2005, 05:21

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

Ваши права

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