а что сложного?
нельзя проверить регистровые пары на значения в лоб, это самый простой способ - 16-битное значение разбито на два байта, в данном случае - младший и старший байт.
т.е. 768= $300(в шестнадцатеричном режиме)
B=3 - это ст. байт
C=0 - мл. байт.
вместе 16 бит получается как 3*256+0 = 768.
Но к играм это отношение не имеет, это азы программирования.
Я понимаю, что регистровая пара состоит из старшего и младшего байта. И то, как это выглядит в шестнадцатеричном виде, тоже знаю.
Но не знал, что нельзя проверять на значение сразу пару, и мне непонятно каким образом ld a,b or c может это делать. К сожалению, как-то так.
Тем не менее Глава 1 закончена, пройдусь еще завтра свежим взглядом и обновлю пдф. Читайте, критикуйте, предлагайте. Спасибо за помощь.
правильней OR A,C (но А не указывается поскольку подразумевается что операция проводится только с ним)
на биты в А накладываются биты из С при этом используется логическое сложение
https://ru.wikipedia.org/wiki/%D0%94...86%D0%B8%D1%8F
флаг нуля Z установится только когда все биты в обоих операндах =0
Код:Таблица истинности ~x ~y x or y ~0 ~0 ~0 ~0 ~1 ~1 ~1 ~0 ~1 ~1 ~1 ~1
Последний раз редактировалось goodboy; 16.03.2015 в 11:25.
С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
скорее создаётся аналог or b,c на 0 проверяются обе части
Перевёл по своему, с нуля:
Код:; Генерируем утолщённый шрифт. ld hl,15616 ; ПЗУ-шрифт. ld de,60000 ; адрес нашего нового шрифта. ld bc,768 ; меняем 96 знаков * 8 строчек. ; Начало цикла font1 ld a,(hl) ; берём биты строчки. rlca ; сдвигаем влево. or (hl) ; объединяем оба изображения. ld (de),a ; пишем в новый шрифт. inc hl ; следующий байт старого. inc de ; следующий байт нового. dec bc ; уменьшаем счетчик. ld a,b ; старший байт (счётчика) or c ; объединяем с младшим байтом. jr nz,font1 ; цикл повторяем, пока не настанет bc=zero. ;новый шрифт устанавливаем как текущий. ld hl,60000-256 ; адрес шрифта минут 32*8. ld (23606),hl ; записываем в системную переменную. ret[свернуть]
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)