↑ вверх

Помощь дистанционщикам!
ДО СибГУТИ (www.do.sibsutis.ru),
ДО СибАГС (www.sapanet.ru),
ДО НГУЭиУ (sdo.nsuem.ru),
ДО СибУПК (sdo.sibupk.su) и др ВУЗы

Этот сайт продаётся. По всем вопросам обращаться по +7 913 923-45-34 (Денис)
Корзина пуста!
Обратная связь




Вариант 07 Лаба 04

20000
      
Просмотров: 1847
Тип работы: Контрольная
Название предмета: Основы системного программирования
Тема/вариант: Вариант 07 Лаба 04
Объем работы: 5
ВУЗ: СибГУТИ
Дата выполнения: 2013-08-12
Размер файла, тип файла: 110.43 Kb, RAR
Прикрепленные файлы: Курс 170 Основы системного программирования (952 Kb)

Цель работы: Научиться использовать команды логических операций
Порядок выполнения работы:
ВАЖНО: Прочитайте требования к выполнению и оформлению лабораторных работ.
Задание 1вариант 7
1.    Изучите приведенную ниже программу на языке ассемблера. Программа подсчитывает количество единиц в заданном байте и результат заносит в регистр DX.
    TITLE Program4    ;названиепрограммы
    .MODEL small    ;отводим под стек и под данные по 64Кб
    .STACK 100h    ;отмечаемначалосегментастека
    .DATA    ;отмечаемначалосегментаданных
    B DB 54     ;задаембайт 54=00011011b
    .CODE    ;отмечаемначалосегментакодов
    main PROC   
    mov AX, @data    ;копируемадрес
    mov DS, AX    ;сегментаданных
    mov СХ, 8    ;задаемколичествоповторений
    xor DX, DX   
    mov AX, DX   
    mov AL, B    ; заносимзаданныйбайт
Cycle:    shr AL, 1    ;регистр AL сдвигаем вправо на одну позицию
    jnc Next    ;если сдвинутый бит 0, то переходим на конец цикла
    inc DХ    ;иначеувеличиваемсчетчик
Next:    loop Cycle   
    mov AX,4C00h    ;выход
    int 21h    ;изпрограммы
    main ENDP   
2.    Выполните отладку программу. Чему равно значение DX перед выходом из программы?
Задание 2
Используя предложенную выше программу, выполните второе задание. Исполнить программу с несколькими (три - четыре) различными (по количеству и по составу) массивами данных, проверить правильность результатов. Номерзаданиявыбирается в соответствии с последнейцифройпароля.
1.    Дан массив из 10 байт. Посчитать количество байт, в которых сброшены 6 и 4 биты. Результатзанести в DX.
2.    Дан массив из 8 байт. Рассматривая его, как массив из 64 бит, посчитать количество единиц. Результатзанести в DX.
3.    Дан массив из 8 байт. Выполнить последовательное логическое умножение всех элементов массива. Результатзанести в DX.
4.    Дан массив из 10 байт. Посчитать количество байт с тремя единицами. Результатзанести в DX.
5.    Рассматривая заданный байт как набор логических значений
(x7 x6 x5 x4 x3 x1 x0) (true -1, false - 0), вычислить логическую формулу
f=(x7 & x6 &x3 ) V (x6 & x4 & x2 & x1)
6.    Дан массив из 8 байт. Рассматривая его, как массив из 64 бит определить номер последней единицы в этом массиве.
7.    Дан массив из 10 байт. Посчитать количество единиц во всех разрядах, кратных трём: 3, 6, 9, …, 75, 78.
8.    Дан массив из 6 байт. Рассматривая его, как массив из 48 бит, посчитать в нём количество нулей.
9.    Дан массив из 6 байт. Посчитать количество байт число единиц, в которых не превышает 3
10.    Дан массив из 6 байт. Посчитать количество единиц во всех разрядах, кратных пяти: 5, 10, …, 45.

 

ЗАКАЗАТЬ РАБОТУ
Отправь нам своё задание, и мы поищем твою работу в нашей базе готовых работ. А если не найдем, то порекомендуем партнеров, которые качественно смогут выполнить твой заказ.
(doc, docx, rtf, zip, rar, bmp, jpeg) не более 5 Мб