User Tag List

Страница 7 из 13 ПерваяПервая ... 34567891011 ... ПоследняяПоследняя
Показано с 61 по 70 из 121

Тема: Неиспользуемые и редкоиспользуемые команды

  1. #61

    Регистрация
    25.04.2009
    Адрес
    Gomel, Belarus
    Сообщений
    32
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    1
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    psb, повяторяю. Вы обсуждаете меня, а не тему и суть вопроса. Обо мне вы ровным счетом ничего не знаете. Поэтому не нужно говорить о том, в чем вы не разбираетесь.

    С ровно таким же успехом я могу сказать, что вы не умеете использовать регистры общего назначения и не умеете структурировать программы так, чтобы не передавать в функции кучу параметров.

    Вам нравится такое общение? Общайтесь так с кем-нибудь другим.

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

    Speccy не предназначен для работы с большими структурами данных. Ни в 80-х, ни в 90-х, ни сейчас. Для работы с большими структурами данных были и есть более мощные и более приемлемые машины. В связи с этим использование структур для передачи в функции на ZX несут зачастую академический и спортивный интерес.

    Это - мое мнение. Такая же имха, как и ваша.

    Цитата Сообщение от psb Посмотреть сообщение
    вам уже привели примеры с FCB и прочим, вас это не устраивает.
    Что меня устраивает и что нет - читайте выше. Внимательно.

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

  3. #62

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

    По умолчанию

    Цитата Сообщение от Vitamin Посмотреть сообщение
    Сообщение от Andrew771
    Проблема в том, что этот xx в массиве записей нужно сначала получить расчетом в зависимости от индекса в массиве и смещения в записи.
    ld bc,xx*sizeofRecord
    add ix,bc
    наверно, ты имел в виду hl?
    ну а дальше в bc задавать смещение внутри записи, и опять add hl,bc?
    Потом, допустим, рядом или через один-два байта еще нужно что-то считать, писать inc hl по несколько раз?


    ---------- Post added at 13:23 ---------- Previous post was at 13:22 ----------

    к тому же портятся регистры hl и bc, а они нужны под рукой часто, особенно hl.

  4. #63

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

    По умолчанию

    Цитата Сообщение от bsivko Посмотреть сообщение
    Вы обсуждаете меня, а не тему и суть вопроса.
    вы не видите сути, к тому же вы вбили в себе в голову, что спек для чего-то предназначен, для чего-то не предназначен - это ваши личные тараканы. вы можете даже утверждать, что достаточно аккумулятора и одного лишь HL, и в принципе будете правы. но на практике, как вам уже сказали (тема про практику, верно?), IX бывает очень полезен. сядьте, напишите OS или хороший гибкий менеджер окон, после этого расскажете всем нам, как у вас все здорово и понятно (расширяемо, поддерживаемо) получилось

    Цитата Сообщение от bsivko Посмотреть сообщение
    в абсолютном большинстве случаев работы с индексными регистрами можно избежать
    в каком таком абсолютном большинстве? вы задачу тогда уточняйте. в большинстве случаев для оси и оконного менеджера эти регистры будут очень полезны (и в плане понятности, и в плане скорости, и в плане гибкости). а для демок наоборот, в большинстве случаев вредны. игры тоже могут разделиться 50/50 в зависимости от типа игры. какое такое у вас большинство - я хз.
    Цитата Сообщение от bsivko Посмотреть сообщение
    В связи с этим использование структур для передачи в функции на ZX несут зачастую академический и спортивный интерес.
    это ваши личные тараканы, этот вывод сделан неизвестно исходя из чего (предполагаю, вы просто не представляете себе таких программ, когда уровень вложенности подпрограмм больше одного заколебетесь передавать в верхнюю всю кучу параметров).

  5. #64

    Регистрация
    07.02.2008
    Адрес
    г. Рязань
    Сообщений
    2,928
    Спасибо Благодарностей отдано 
    37
    Спасибо Благодарностей получено 
    124
    Поблагодарили
    44 сообщений
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    в абсолютном большинстве случаев работы с индексными регистрами можно избежать
    ftp://ftp.worldofspectrum.org/pub/si...ssemblyThe.txt
    А мужики-то не знали...

    P.S. Попробуй заоптимизировать без IX LD-BYTES, SAVE-ETC, к примеру

  6. #65

    Регистрация
    25.04.2009
    Адрес
    Gomel, Belarus
    Сообщений
    32
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    1
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Andrew771 Посмотреть сообщение
    наверно, ты имел в виду hl?
    Полагаю Vitamin имеет ввиду недокументированную команду ADD IX,BC (defb #DD, #09).

    Цитата Сообщение от Alex Rider Посмотреть сообщение
    P.S. Попробуй заоптимизировать без IX LD-BYTES, SAVE-ETC, к примеру
    Сейчас нет фтп-доступа. Как только, обязательно посмотрю.

  7. #66

    Регистрация
    03.01.2006
    Адрес
    Рязань
    Сообщений
    2,935
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    1
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от bsivko Посмотреть сообщение
    Полагаю Vitamin имеет ввиду недокументированную команду ADD IX,BC (defb #DD, #09).
    Когда она стала недокументированной?

    Для справки, вывод текста во фреймовых листалках делают через индексные регистры (текст - в DE, графика букв в BC, HL, генерируемый код в IX, IY).

  8. #67

    Регистрация
    18.01.2005
    Адрес
    Калининград, Россия
    Сообщений
    110
    Спасибо Благодарностей отдано 
    7
    Спасибо Благодарностей получено 
    3
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от bsivko Посмотреть сообщение
    Мое мнение: в абсолютном большинстве случаев работы с индексными регистрами можно избежать на Speccy, обеспечив при этом большую скорость и меньший расход памяти, вполне возможно в ущерб читаемости и сопровождаемости кода.
    Не пойму, о чем вообще спор. IX и IY - это фича Z80 для поддержки языков высокого уровня. Точка.

  9. #68

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

    По умолчанию

    Цитата Сообщение от thims Посмотреть сообщение
    Точка.
    да ладно?

  10. #69

    Регистрация
    24.07.2008
    Адрес
    г. Курган
    Сообщений
    2,062
    Спасибо Благодарностей отдано 
    10
    Спасибо Благодарностей получено 
    17
    Поблагодарили
    17 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от bsivko Посмотреть сообщение
    Полагаю Vitamin имеет ввиду недокументированную команду ADD IX,BC
    Читая некоторые спек. журналы в конце 90-х, с удивлением обнаружил, что нормальные команды z80 вдруг стали записывать в "недокументированные". Такие как set 7,(ix+d), bit 0,(iy+d), add ix,rw (rw=bc,de,ix) и т.д. и т.п. Документацию на проц авторы тех текстов явно не читали. А начиная с проца Z-180 стали "легальными" и обращения к половинкам индексных регистров. Zilog предложила написание YH, YL, XH, XL. Хотя конечно сути это не меняет, в конкретном трансляторе можно использовать любое написание.
    Последний раз редактировалось Vadim; 26.06.2012 в 05:55.

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

    Profi 5.06 1024K 12Mhz (кварц на 24), палитра, COM-порт, часы, hdd, covox, программатор
    ZX-Spectrum +3, ZX-Spectrum +2B, ZX-Spectrum +2, ZX Spectrum 48, ZX Spectrum 48+
    ZX Evolution Rev B.
    Color 48 + Beta Disk Interface +FDD+YM2149F
    Орель-08БК
    Pentagon-48 (недоссобранный кем-то)
    Pentagon-128 (полуубитый)
    Кворум-128 (в ремонте)
    Магик-05 (в ремонте)
    Robotron 1715
    Корвет ПК8020 и ПК8010
    Amstrad CPC 464
    Amstrad CPC 6128
    [свернуть]

  11. #70

    Регистрация
    14.01.2005
    Адрес
    Таганрог, Россия
    Сообщений
    4,286
    Спасибо Благодарностей отдано 
    9
    Спасибо Благодарностей получено 
    91
    Поблагодарили
    39 сообщений
    Mentioned
    8 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Vadim Посмотреть сообщение
    Такие как set 7,(ix+d), bit 0,(iy+d), add ix,rw (rw=bc,de,ix) и т.д. и т.п.
    Они еще не видели LD A,SRL (ix+d); LD A,SET 7,(IX+d)

Страница 7 из 13 ПерваяПервая ... 34567891011 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. Основные команды Atari 65
    от Andrey_Ak в разделе Atari
    Ответов: 71
    Последнее: 06.03.2017, 18:27
  2. Недокументированные команды
    от MadCat! в разделе Программирование
    Ответов: 46
    Последнее: 02.02.2011, 13:49
  3. Команды Z80
    от e2e4 в разделе Для начинающих
    Ответов: 11
    Последнее: 02.07.2010, 21:13
  4. Команды Z80
    от Almaz в разделе Программирование
    Ответов: 1
    Последнее: 28.10.2007, 12:50

Ваши права

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