Технический форум
Вернуться   Технический форум > Программирование > Форум программистов > Помощь студентам


Ответ
 
Опции темы Опции просмотра
Старый 12.03.2013, 20:34   #1 (permalink)
Fileo
Новичок
 
Регистрация: 12.03.2013
Сообщений: 1
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию Помогите нарисовать блок-схему TASM

нарисуйте хотя бы схематично в паинте пожалуйста

Добавить новый элемент массива, если его значение не равно значениям элементов заданного массива А(I). I = 1,2,..,5. Максимальная размерность массива А(I)=10. Добавляемые числа находятся в массиве B(J). J = 1,2,...,5.

Код:
model small 
.stack 100h ;стэк 256 Кб
.data
    len2 dw 5 ;длина массива-результата
    len equ 5 ;длина исходных массивов
    mas2 db 2, 3, 6, 7, 8 ;массив откуда брать
    void dw ? ;раздел между массивами для удобного просмотра
    mas1 db 1, 2, 3, 4, 5 ;массив - результат
.code
    start: ;метка начала программы
        mov ax,(собака)data ;инициализируем ds сегмнтом данных
        mov ds,ax       ; через регистр ах
        mov cx,len ;цикл по всему массиву
        xor si,si ;исключающее или - обнуление счетчика цикла
    cicl1: ;цикл по массиву для добавления
        mov al,mas2[si] ;берем поочередно каждый элемент
        push cx ;запоминаем сх в стэк для вложенных циклов
        mov cx, len2 ;вложенный цикл по всему результирующему массиву
        xor di,di ;обнуляем счетчик второго цикла
    cicl2: ;пробегаем по массиву результату.
        cmp al,mas1[di] ;если в массиве таких элементов нет
        je metka
        inc di
    loop cicl2 ;то добавим
        mov di,len2       ;добавление
        mov mas1[di],al ;элемента в массив
        inc len2            ;увеличение длины массива
    metka:
        pop cx              ;если есть, то следующая итерация
        inc si                ;переход к следующему элементу
    loop cicl1 ;все элементы добавлены
    exit: ;выход
        mov ax,4c00h ;4с - номер функции выхода, 0 - код ошибки
        int 21h ;вызов библиотеки прерываний DOS
end start ;вход в программу с метки start
Fileo вне форума   Ответить с цитированием

Старый 12.03.2013, 20:34
Helpmaster
Member
 
Аватар для Helpmaster
 
Регистрация: 08.03.2016
Сообщений: 0

Эти посты имеют сходства с вашей темой, можете их полистать

Помогите нарисовать схему
Помогите сделать блок-схему
Помогите сделать блок-схему

Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
Ответ

Опции темы
Опции просмотра

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.




Часовой пояс GMT +4, время: 18:39.

Powered by vBulletin® Version 6.2.5.
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.