" Этюды " - рулят !![]()
" Этюды " - рулят !![]()
С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
а процедура наоборот делающая ?
если не трудно![]()
Вход - список номеров выключеных байт (словами, по 2 байта). Список заканчивается словом #FFFF.
Можно ещё одну придумать, побыстрее, но только если список будет упорядоченым - от меньшего к большему.Код:ld hl,Output ; сначала устанавливаем все биты ld b,35 lab0 ld (hl),#FF inc hl djnz lab0 ld hl,Input lab1 ld e,(hl) ; берём номер бита inc hl ld d,(hl) inc hl ld a,d ; если он #FFFF - выход and e inc a ret z push hl ld a,e ; вычисляем маску для этого бита and 7 ld c,#7F jr z,lab3 lab2 rrc c dec a jr nz,lab2 lab3 ld a,d ; вычисляем адрес байта, в котором этот бит находится rra rr e rra rr e rra rr e ld d,0 ld hl,OutPut add hl,de ld a,(hl) ; сбрасываем бит and c ld (hl),a pop hl jr lab1 ; переходим к следующему номеру
Все любят гипножабу
За что люблю спектрум - самая добрая платформа =)
SAMstyle![]()
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)