Важная информация

User Tag List

Страница 22 из 37 ПерваяПервая ... 181920212223242526 ... ПоследняяПоследняя
Показано с 211 по 220 из 369

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

  1. #211
    Master
    Регистрация
    03.07.2021
    Адрес
    г. Кировск
    Сообщений
    905
    Спасибо Благодарностей отдано 
    76
    Спасибо Благодарностей получено 
    205
    Поблагодарили
    153 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от drbars Посмотреть сообщение
    Какой смысл считать вперёд/назад каждый раз?
    Кстати, да. Строим таблицу готовых адресов для каждого файла, а для загрузки берём смещение на номер трека и получаем указатель на трек/сектор нужного файла, вот и всё.
    А если все файлы выровнять до одного размера, как оговаривалось ранее, то и таблица не нужна.

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

  3. #212
    Veteran
    Регистрация
    01.03.2005
    Адрес
    Новосибирск
    Сообщений
    1,994
    Спасибо Благодарностей отдано 
    72
    Спасибо Благодарностей получено 
    284
    Поблагодарили
    107 сообщений
    Mentioned
    6 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    А что за задача стоит?

    Вот таким способом, без цикла, можно делать пропуск от 1 до 240 секторов:

    Код:
    	LD DE,[TR/SEC]
    	LD A,[Skip Sectors 1-240]
    	
    	ADD A,E
    	LD B,A
    	AND #0F
    	LD E,A
    
    	LD A,B
    	RRCA
    	RRCA
    	RRCA
    	RRCA
    	AND #0F
    	ADD A,D
    	LD D,A
    	RET
    Последний раз редактировалось drbars; 24.01.2022 в 21:20.

  4. #213
    Member
    Регистрация
    18.07.2021
    Адрес
    г. Хмельницкий, Украина
    Сообщений
    99
    Спасибо Благодарностей отдано 
    10
    Спасибо Благодарностей получено 
    30
    Поблагодарили
    23 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Как бы сделать покрасивше:
    в зависимости от состояния флага C поставить или сбросить 0-й бит в памяти по адресу (HL)?
    Аккумулятор свободен.
    Код:
    if CY=1
       set 0, (HL);
    else
       res 0, (hl);
    Последний раз редактировалось 0xDEAD; 29.01.2022 в 22:45.

  5. #214
    Guru Аватар для jerri
    Регистрация
    01.03.2005
    Адрес
    Samara
    Сообщений
    4,753
    Спасибо Благодарностей отдано 
    273
    Спасибо Благодарностей получено 
    286
    Поблагодарили
    214 сообщений
    Mentioned
    12 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от 0xDEAD Посмотреть сообщение
    Как бы сделать покрасивше:
    в зависимости от состояния флага C поставить или сбросить 0-й бит в памяти по адресу (HL)?
    Аккумулятор свободен.
    Код:
    if CY=1
       set 0, (HL);
    else
       res 0, (hl);
    ты смеешься да?

    rl (hl)

    если хочешь оставить C
    то rr (hl): rlc (hl)
    С уважением,
    Jerri / Red Triangle.

  6. #215
    Member
    Регистрация
    18.07.2021
    Адрес
    г. Хмельницкий, Украина
    Сообщений
    99
    Спасибо Благодарностей отдано 
    10
    Спасибо Благодарностей получено 
    30
    Поблагодарили
    23 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    jerri, так а что rl (hl)? Мне (HL) двигать нельзя, биты 1-7 должны быть там, где они есть. Только нулевой бит нужно установить/сбросить.

    Хорошо. А если не нулевой бит?
    Код:
    if CY=1
       set 5, (HL);
    else
       res 5, (hl);
    Последний раз редактировалось 0xDEAD; 30.01.2022 в 00:26.

  7. #216
    Veteran
    Регистрация
    07.10.2006
    Сообщений
    1,645
    Спасибо Благодарностей отдано 
    243
    Спасибо Благодарностей получено 
    249
    Поблагодарили
    155 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от 0xDEAD Посмотреть сообщение
    Как бы сделать покрасивше:
    в зависимости от состояния флага C поставить или сбросить 0-й бит в памяти по адресу (HL)?
    Аккумулятор свободен.
    Код:
    if CY=1
       set 0, (HL);
    else
       res 0, (hl);
    Лучше, чем
    set n,(hl)
    jr c, $+2
    res n,(hl)

    ничего нету. И вообще, лучше сначала делать как понятно, а как покрасивше оставить на потом (или вообще не делать как покрасивше, обычно копеечная оптимизация себя не особо оправдывает, гораздо выгоднее алгоритмическая).
    Последний раз редактировалось Spectramine; 30.01.2022 в 01:23.

  8. #217
    Member
    Регистрация
    18.07.2021
    Адрес
    г. Хмельницкий, Украина
    Сообщений
    99
    Спасибо Благодарностей отдано 
    10
    Спасибо Благодарностей получено 
    30
    Поблагодарили
    23 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

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

  9. #218
    Veteran
    Регистрация
    07.10.2006
    Сообщений
    1,645
    Спасибо Благодарностей отдано 
    243
    Спасибо Благодарностей получено 
    249
    Поблагодарили
    155 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Красивые методы обычно ухудшают читабельность программы.

  10. #219
    Member
    Регистрация
    18.07.2021
    Адрес
    г. Хмельницкий, Украина
    Сообщений
    99
    Спасибо Благодарностей отдано 
    10
    Спасибо Благодарностей получено 
    30
    Поблагодарили
    23 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    ld a, 0
    vs
    xor a

    Что-то подобное я имел в виду под "красивым методом".
    Пусть себе ухудшают. Место критическое к скорости.

  11. #220
    Master
    Регистрация
    24.05.2005
    Адрес
    г. Запорожье, Украина
    Сообщений
    992
    Спасибо Благодарностей отдано 
    571
    Спасибо Благодарностей получено 
    365
    Поблагодарили
    239 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от 0xDEAD Посмотреть сообщение
    Думал, может есть какой-то красивый метод без перехода.
    Код:
    ld a,0
    adc a,0
    or a,(hl)
    ld (hl),a
    правда здесь нету сброса бита - но возможно это и не требуется

Страница 22 из 37 ПерваяПервая ... 181920212223242526 ... ПоследняяПоследняя

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

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

Эту тему просматривают: 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

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

Ваши права

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