Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Низкоуровневое программирование > Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.11.2018, 19:00   #1
Ksenia08
Новичок
Джуниор
 
Регистрация: 12.11.2018
Сообщений: 1
По умолчанию Дан массив из 9 байт. Рассматривая его как массив из 72 бит, посчитать число переходов между нулями и единицами (не 1 и 0)

Дан массив из 9 байт. Рассматривая его как массив из 72 бит, посчитать число переходов между нулями и единицами (не 1 и 0)

Вот что получилось,переходы считает (выводит 9), но не считает переходы между байтами (например 10101010b,11111111b первый заканчивается на 0, а второй начинается с 1, это должно считаться, т.е должно быть 13). Как исправить, подскажите пожалуйста.

Код:
Assembler
data segment
    mass db 10101010b,11111111b,0101010b, 11111111b, 10101010b, 11111111b,11111111b, 11111111b, 11111111b
data ends
code segment
assume cs: code, ds:data
START: mov ax, data
    mov ds, ax 
    xor ax,ax
    lea bx, mass
    mov cx, 9
    
    beg: mov al, [bx] 
    push cx
    mov cx,8
    
pr:shl al,1 
    jc no
    test al, 10000000b
    jz no
    inc dl
    
no:
    loop pr
    pop cx
    inc bx 
    loop beg
    
xor ax, ax    
mov ax, 4c00h ; ??? ?????????? 0
Int 21h ; ????? ? DOS
code ends
end START

Последний раз редактировалось Аватар; 31.05.2019 в 12:39.
Ksenia08 вне форума Ответить с цитированием
Старый 31.05.2019, 12:38   #2
Nif-naf
Форумчанин
 
Аватар для Nif-naf
 
Регистрация: 05.09.2016
Сообщений: 131
По умолчанию

Tak Bce. 3aBecTu Bce kak byte.
Немного о GoAsm.
Nif-naf вне форума Ответить с цитированием
Старый 31.05.2019, 13:28   #3
Nif-naf
Форумчанин
 
Аватар для Nif-naf
 
Регистрация: 05.09.2016
Сообщений: 131
По умолчанию

3aTeM Bce B word ,3aTeM -1byte u cHoBa B word, a B uTore +1byte u Bce.
Немного о GoAsm.
Nif-naf вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Дано масив из 6 байт. Посчитать число 2х единиц, что расположены между нулями. dino-4udo Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 31 08.06.2019 06:36
Ассемблер. Дан массив из 10 байт. Посчитать количество единиц во всех разрядах, кратных трём: 3, 6, 9, …, 75, 78. Ксюндра Помощь студентам 5 01.06.2019 14:51
Дан массив из 9 байт расматривая его как массив 72 бит подсчитать число нулей в этом массиве. noob asm Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 6 16.04.2012 19:04