Навигация
Главная
Поиск
Форум
FAQ's
Ссылки
Карта сайта
Чат программистов

Статьи
-Delphi
-C/C++
-Turbo Pascal
-Assembler
-Java/JS
-PHP
-Perl
-DHTML
-Prolog
-GPSS
-Сайтостроительство
-CMS: PHP Fusion
-Инвестирование

Файлы
-Для программистов
-Компонеты для Delphi
-Исходники на Delphi
-Исходники на C/C++
-Книги по Delphi
-Книги по С/С++
-Книги по JAVA/JS
-Книги по Basic/VB/.NET
-Книги по PHP/MySQL
-Книги по Assembler
-PHP Fusion MOD'ы
-by Kest
Professional Download System
Реклама
Услуги

Автоматическое добавление статей на сайты на Wordpress, Joomla, DLE
Заказать продвижение сайта
Программа для рисования блок-схем
Инженерный калькулятор онлайн
Таблица сложения онлайн
Популярные статьи
OpenGL и Delphi... 65535
Форум на вашем ... 65535
HACK F.A.Q 65535
Бип из системно... 65535
Гостевая книга ... 65535
Invision Power ... 65535
Пример работы с... 65535
Содержание сайт... 65535
Организация зап... 65535
Вызов хранимых ... 65535
Создание отчето... 65535
Программируемая... 65535
Эмулятор микроп... 65535
Подключение Mic... 65535
Создание потоко... 65535
Приложение «Про... 65535
Оператор выбора... 65535
Модуль Forms 65535
ТЕХНОЛОГИИ ДОСТ... 64118
Имитационное мо... 58773
Реклама
Сейчас на сайте
Гостей: 4
На сайте нет зарегистрированных пользователей

Пользователей: 13,099
новичок: kuubi55
Новости
Реклама
Выполняем курсовые и лабораторные по разным языкам программирования
Подробнее - курсовые и лабораторные на заказ
Delphi, Turbo Pascal, Assembler, C, C++, C#, Visual Basic, Java, GPSS, Prolog, 3D MAX, Компас 3D
Заказать программу для Windows Mobile, Symbian

Моделирование процесса обеспечивающего надежность функционирования АСУ Т...
База данных студентов на Delphi (файл записей) + Блок схемы
Принадлежит ли точка пересечению двух окружностей на Turbo Pascal + Отче...

Реклама



Подписывайся на YouTube канал о программировании, что бы не пропустить новые видео!

ПОДПИСЫВАЙСЯ на канал о программировании
Ввод массива
format mz



macro gets str {

;============
mov dx, str
mov ah,3Fh
mov bx,0
mov cx,5; максимум символов
int 21h
;===============
add dx,ax ;???????????????????????????
sub dx,2 ;???????????????????????????
mov al,'$' ;???????????????????????????
mov bx,dx ;???????????????????????????
mov [bx],al ;???????????????????????????



}



macro mxchg i1,j1,i2,j2 {
;меняет занчение положение матрици между [x1,y1] [x2,y2]
;
xor dx,dx

mov ax,i1
xor bx,bx
mov bl,[n] ;???????????????????????????

mul bx
mov si,ax

mov bx,j1

mov ah,[si+bx+mass] ;???????????????????????????

push ax
mov ax,i2
mov bl,[n]
mul bx

mov di,ax
mov bx,j2

mov cl,[di+bx+mass]

pop ax
mov [di+bx+mass],ah

mov bx,j1

mov [si+bx+mass],cl
}


;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;=======переменные ======================
msg db 56 dup (?) ;Set msg array
endl db 10,13,'$'
EnterN db "N=$"
n db 7; размер массива
mass db 1024 dup (?); начало масива и выделение места под него

i1 dw 0
j1 dw 0

i2 dw ?
j2 dw ?

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;==========================================
begin:
mov ax,cs
mov ds,ax

call VVOD


;DO
call vuvmass

mov ah,9
mov dx,endl
int 21h
;;;;;;;;;;;;;;


;------------------------
;Подготовка
;
xor cx,cx
mov cl,[n]
dec cx
mov [i1],0
mov [j1],1


mov [i2],1

mov [j2],cx


fcikl:
dec cx
push cx


cmp cx,0
jle next
push [j1]
push [i2]
@@:
push cx
;mxchg 0,1,1,2
mxchg [i1],[j1],[i2],[j2] ;???????????????????????????
inc [j1]
inc [i2]
pop cx
loop @r

pop [i2]
pop [j1]

inc [j1]
inc [i1]

dec [j2]
inc [i2]

next:

;------------------------
pop cx
dec cx ;???????????????????????????
cmp cx,0
jg fcikl

;==========================
;;;;;;;;;;;;;;;;;;;;;;;;;;;
call vuvmass
;;;;;;;;;;;;;;;;;;;;;
;====================

mov ax, 4c00h ;
int 21h
;==============

dgtTostr: ;число в строку
;ax=число
;si=строка

mov dl,'$'
push dx



vuv_chisla_s:
mov dx,0
mov bx,10
div bx


add dl,30h ;???????????????????????????

push dx

cmp ax,0
jne vuv_chisla_s
; ;теперь числа вынимаеи из стека
gopop:
pop dx
mov [si],dl ;???????????????????????????
cmp dl,'$'
pushf
inc si
popf
jne gopop

ret
;=====================
;процедура выводит массив на экран
vuvmass:

xor cx,cx
xor bx,bx
mov cl,[n]
;mov
.cikl:
push cx
xor cx,cx
mov cl,[n]
@@:
push cx
push bx
xor ax,ax
mov al,[mass+bx]

mov si,msg
call dgtTostr

mov ah,9
mov dx,msg
int 21h

mov ah,2
mov dl,9h
int 21h


pop bx
inc bx
pop cx
loop @r
push bx
mov ah,9
mov dx,endl
int 21h
pop bx

pop cx

loop .cikl

ret
;========================
;=========================
VVOD:
;воодим масив
mov ah,9
mov dx,EnterN
int 21h

gets msg

mov si,msg

call strTodgt

mov [n],al

;водим матрицу(массив)
xor bx,bx
;xor ax,ax
;mov al,[n]
mov bx,ax

mul bx
mov cx,ax
xor bx,bx
xor ax,ax
@@:
push cx
push bx

call vuvod_do
gets msg

mov si,msg

call strTodgt

pop bx
pop cx
mov [mass+bx],al ;???????????????????????????
inc al
inc bx
loop @r


ret
;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;===========================
;;;;;;;;;;;;;;;;;;;;;;;;;;;;
strTodgt: ; строку в число, принимает строку в si , вывод в ах
;метод который переводит с строки в числовой формат
mov dx,0
;mov si,%1
@@: ;начало цикла
mov ax,0
mov cx,0
mov al,[si] ;???????????????????????????
cmp al,'$' ;???????????????????????????
je @f
sub al,30h

mov cx,ax
mov bx,10 ;???????????????????????????
mov ax,0 ;???????????????????????????
mov ax,dx
mul bx

add ax,cx

mov dx,ax
inc si

jmp @r
@@:
mov ax,dx

ret
;;;;;;;;;;;;;;;;;;;;;;;;;;;;
vuvod_do:
;выводим инфу о том какой элемент массива вводим
;так же тут будем увеличивать индексы
mov ah,2
mov dl,'['
int 21h

mov ax,[i1]
mov si,msg
call dgtTostr

mov ah,9
mov dx,msg
int 21h

;---------------
mov ah,2
mov dl,',' ;???????????????????????????
int 21h
;---------------

mov ax,[j1]
mov si,msg
call dgtTostr

mov ah,9
mov dx,msg
int 21h

mov ah,2
mov dl,']'
int 21h

mov ah,2
mov dl,':'
int 21h
;-------------

inc [j1]
xor ax,ax
mov al,[n]
cmp [j1],ax ;???????????????????????????
jne @f
mov [j1],0 ;???????????????????????????
inc [i1]
@@:

ret
;;;;;;;;;;;;;;;;;;;;;;;;;;;;



Опубликовал Kest May 13 2014 02:30:04 · 0 Комментариев · 2653 Прочтений · Для печати

• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •


Комментарии
Нет комментариев.
Добавить комментарий
Имя:



smiley smiley smiley smiley smiley smiley smiley smiley smiley
Запретить смайлики в комментариях

Введите проверочный код:* =
Рейтинги
Рейтинг доступен только для пользователей.

Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.

Нет данных для оценки.
Гость
Имя

Пароль



Вы не зарегистрированны?
Нажмите здесь для регистрации.

Забыли пароль?
Запросите новый здесь.
Поделиться ссылкой
Фолловь меня в Твиттере! • Смотрите канал о путешествияхКак приготовить мидии в тайланде?
Загрузки
Новые загрузки
iChat v.7.0 Final...
iComm v.6.1 - выв...
Visual Studio 200...
CodeGear RAD Stud...
Шаблон для новост...

Случайные загрузки
Delphi 7: Для про...
Игра Car [Исходни...
JBlabel3D
Illusion
Развивающийся фла...
Flash MP3 Player ...
Реализация ЭЦП по...
Распознавание тек...
Assistant
Профессиональное ...
Drag&Drop
Tenis [Исходник н...
Библиотека програ...
Язык программиров...
С# для профессион...
Bitmap [для кнопок]
Srinilist
Page Promoter 7.7...
CoolHints2k v1.03
IPAddresseEdit

Топ загрузок
Приложение Клие... 100497
Delphi 7 Enterp... 88583
Converter AMR<-... 20084
GPSS World Stud... 13982
Borland C++Buil... 12254
Borland Delphi ... 8760
Turbo Pascal fo... 7062
Visual Studio 2... 5007
Калькулятор [Ис... 4980
FreeSMS v1.3.1 3547
Случайные статьи
Найдите лучшие RTP...
Серия интерфейсов RS
Файл AndroidManife...
Где уклономер купить
МОДЕЛЬ С АКТИВНОЙ ...
Ландшафтный дизайн
Определение функци...
Системы контроля сети
call(X)
Игровой сервер ком...
Выбор тарифного плана
Определить количес...
Собираем поисковый...
Описание сообщений...
Основы архитектуры VM
Алгоритм copy_if()
Спецификация MPEG-4
Шифрование и расши...
Исключительные сит...
Обобщения
Если он перечислен...
Два основных подхо...
Синхронизация в яд...
Постановка задачи ...
Вы готовы выпустит...
Статистика



Друзья сайта
Программы, игры


Полезно
В какую объединенную сеть входит классовая сеть? Суммирование маршрутов Занимают ли таблицы память маршрутизатора?