Навигация
Главная
Поиск
Форум
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
Содержание сайт... 65535
Вызов хранимых ... 65535
Эмулятор микроп... 65535
Приложение «Про... 63183
Организация зап... 62236
Invision Power ... 61841
Оператор выбора... 61775
Подключение Mic... 60324
Модуль Forms 59575
Создание отчето... 59413
ТЕХНОЛОГИИ ДОСТ... 55590
Программируемая... 54705
Пример работы с... 52569
Имитационное мо... 50961
21 ошибка прогр... 45935
Реклама
Сейчас на сайте
Гостей: 10
На сайте нет зарегистрированных пользователей

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

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

Реклама



Подписывайся на 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 Комментариев · 1941 Прочтений · Для печати

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


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



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

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

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

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

Пароль



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

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

Случайные загрузки
ComboBox97
Игра в крестики н...
Пример клиента ФТ...
AlignEdit
Приемы программир...
Работа с матрицами
Простой текстовый...
С. Г. Горнаков - ...
Запрет гостям ск...
ICQ
База для Allsubmi...
Info
Tank [Исходник на...
C# Учебный курс
PHP: обучение на ...
Иллюстрированный ...
Программирование ...
Borland Delphi 6....
Matrix2D
Dynamic Titles дл...

Топ загрузок
Приложение Клие... 100366
Delphi 7 Enterp... 81733
Converter AMR<-... 20046
Borland C++Buil... 10983
GPSS World Stud... 10179
Borland Delphi ... 8002
Turbo Pascal fo... 6954
Visual Studio 2... 4960
Калькулятор [Ис... 4222
FreeSMS v1.3.1 3508
Случайные статьи
Биты, байты и слова
Сортировка массивов
10. Эдисон наполни...
Что делает маска п...
Съемка Canon по ос...
Глоссарий
Онлайн казино. Игр...
Услуги по сопровож...
Хакинг
Написать код, учит...
Windows 98 - как р...
Вопросы руководств...
Сборка
Организация взаимо...
флажок Use a datas...
Блоки работы с при...
ДОПУСТИМЫЕ СПОСОБЫ...
Обработка транзакц...
Запись и чтение те...
Циклические связан...
Таблица Customers ...
Linux — система бе...
Объемные диаграммы
Онлайн-слоты для р...
Планируя агенты во...
Статистика



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


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