Навигация
Главная
Поиск
Форум
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
Подключение Mic... 65535
Создание потоко... 65535
Приложение «Про... 65535
Оператор выбора... 65535
Модуль Forms 62806
Создание отчето... 62798
ТЕХНОЛОГИИ ДОСТ... 59332
Пример работы с... 58054
Имитационное мо... 54724
Реклама
Сейчас на сайте
Гостей: 15
На сайте нет зарегистрированных пользователей

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

База данных студентов на Delphi + Microsoft SQL Server
Моделирование процесса обработки заданий пакетным режимом работы с квант...
База данных студентов на Delphi (файл записей) + Блок схемы

Реклама



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

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


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



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

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

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

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

Пароль



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

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

Случайные загрузки
Анекдоты с ostrie.ru
Библия хакера 2. ...
Delphi на примерах
EMSQuickImport
SearchAndReplace
Киллер окон
Популярные загрузки
Модифицированная ...
Открытие Cd-ROM'a...
База каталогов ( ...
База предприятий ...
Исправление проц...
SendSMS для PHP-F...
DCAVI
Графика в проекта...
Delphix Sample [И...
База англоязычных...
С. Г. Горнаков - ...
Создание меню на ...
AID антивирус

Топ загрузок
Приложение Клие... 100422
Delphi 7 Enterp... 84933
Converter AMR<-... 20062
GPSS World Stud... 11965
Borland C++Buil... 11406
Borland Delphi ... 8377
Turbo Pascal fo... 7008
Visual Studio 2... 4985
Калькулятор [Ис... 4628
FreeSMS v1.3.1 3530
Случайные статьи
Application СотраН...
Как купить мед спр...
Язык С: оператор s...
Программа считывае...
Как сделать так, ч...
AVL-деревья
Группа блоков созд...
Выбор пакета ассем...
Программирование C...
зательно
Контроллер
Наследование и шаб...
15.2. Фразы
Инерция тепла
тег структуры
Протокол PPPoE
Буферы для потоков
Броня
Литература
Как вывести на стр...
Еще один образец п...
Персептроны
Расчет стоимости э...
Введение
же работало в сети...
Статистика



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


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