Навигация
Главная
Поиск
Форум
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
Бип из системно... 60681
Invision Power ... 58589
Организация зап... 58553
Модуль Forms 57052
Приложение «Про... 56796
Оператор выбора... 56235
Создание отчето... 55985
Подключение Mic... 55845
ТЕХНОЛОГИИ ДОСТ... 52178
Программируемая... 49477
Пример работы с... 48003
Имитационное мо... 47732
21 ошибка прогр... 42698
Реклама
Сейчас на сайте
Гостей: 6
На сайте нет зарегистрированных пользователей

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

Расчет мер близости на отношениях на Delphi + Пояснительная записка
Моделирование интернет кафе на GPSS + Отчет
Моделирование автовокзала + Отчет + Блок схема

Реклама

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

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


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



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

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

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

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

Пароль



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

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

Случайные загрузки
KOL & MCK v1.69
Ильдар Хабибуллин...
Стелтинг Стивен, ...
«Философия» прогр...
Простой пример ка...
AID антивирус
Разработка Web-пр...
Советы от Даниилы...
IPAddresseEdit
C++ Builder в за...
Генетический алго...
Библия хакера 2 К...
ComboBox97
Пример клиента ФТ...
Панель "Случайное...
DAlarm
MpegPlay
XPButtons
EMS QuickExport S...
RAS

Топ загрузок
Приложение Клие... 100307
Delphi 7 Enterp... 77851
Converter AMR<-... 20021
Borland C++Buil... 10670
GPSS World Stud... 9240
Borland Delphi ... 7658
Turbo Pascal fo... 6883
Visual Studio 2... 4906
Калькулятор [Ис... 3989
FreeSMS v1.3.1 3486
Случайные статьи
Диагональные элементы
Оператор «плюс» (+)
Последний вариант ...
Фирма Adobe
Динамические маршр...
Математические выводы
Оптимальная сортир...
Поддержка 32-битны...
Работа над языком ...
туннеля
Средства для работ...
Интерфейс TPI
Типовой проект обл...
Документируйте в п...
Пассивные интерфей...
Создание проекта и...
LINK (ВВЕСТИ В СПИ...
SAVEVALUE (СОХРАНИ...
Язык С и С ++: ука...
Работа с базами да...
Новый корпус для ЭЛТ
Правила большого п...
Класс TMoney с кон...
Кратные магическом...
Понимание системы ...
Статистика



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


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