3 года назад

Ассемблер принцип работы программы

Объясните принцип работы программы в двух словах:; masm dos com # .286 .model small .stack 100h .data; выводимые сообщения в кодировке DOS   mes1 db '‚ўҐ¤Ё бва®Єг Ё ­ ¦¬Ё ­  Ete',0Dh,0Ah,'$' mes2 db 0Dh,0Ah,'Џ®«г祭­ п бва®Є : ' dest db 510 dup('$')     ; место для размещения преобразованной строки buff db 255,?,255 dup(?) ; структура для ввода строки:                          ; максимальная длина = 255                          ; длина введенной строки                          ; место для помещения вводимой строки .code                ; сегмент кода stat:  mov ax,@data        ; настройка регистра  mov ds,ax           ; сегмента данных  mov es,ax           ; и вспомогательного регистров  ; установка видеорежима  mov ax,3            ; функция установки видеорежима с очисткой экрана  it 10h  ; вывод приглашения к вводу  mov ah,9            ; функция вывода сообщения  mov dx,offset mes1  ; адрес выводимого сообщения  it 21h  ; ввод строки  mov ah,0Ah          ; функция ввода строки  mov dx,offset buff  ; адрес структуры для ввода строки  it 21h  ; проверка длины строки  mov ch,0            ; старший байт длины строки = 0  mov cl,buff+1       ; младший байт равен длине строки  jcxz a2             ; если длина строки=0 - переходим на метку, строка пустая  ; обработка строки  mov si,offset buff+2 ; адрес начала введенной строки  mov di,offset dest  ; адрес для размещения результата обработки  mov ah,' '          ; добавляемый символ - пробел  cld                 ; строковые операции производим слева на право a1: ; цикл обработки символов строки  lodsb               ; AL=[SI] - текущий символ, SI=SI+1  stosw               ; [DI]=AX (AL+' '), DI=DI+2  loop a1             ; повторять СХ раз (для всех символов строки) a2: dec di              ; адрес символа после последнего  mov byte pt [di],'$' ; признак конца строки для вывода  ; вывод результата  mov ah,9            ; функция вывода сообщения  mov dx,offset mes2  ; выводимое сообщение  it 21h

Claudia (Гость) Assembler
3

Assembler: Ассемблер принцип работы программы

8 месяцев назад Быстрая сортировка на ассемблере (QuickSort) (проблемы при работе программы)

Быстрая сортировка на ассемблере.Вот алгоритм на паскале, который я переделывал под ассемблер. (стандартный алгоритм, с рекурсией)http://pastie.og/1395683А вот код на ассемблере (делал на TASM)http://pastie.og/1395685Ошибка следующая - компиляция нормальная, при запуске вылетает с такой ошибкойhttp://habeffect.u/files/a1e/5a7e420c1/asm_e.jpgСмотрел в отладчике  - ошибка возникает где-то поздно, не на ранних циклах и рекурсии.Если у вас возникнут вопросы по коду - задавайте, постараюсь объяс...

Юрий Мацук (Гость) 1 ответ
3
9 месяцев назад Стоит ли мне учить ассемблер?

Слышал , что ассемблер можно  выучить за две недели, правда ли это?Знаю C++ и PHP.Ассемблер думаю учить потому-что в институте куда буду поступать его тоже будут преподавать.Слышал , что знание ассемблера очень поможет понять принципы работы всех программ и поможет мне осваивать другие языки, правда ли это?
Слышал , что ассемблер самый лёгкий язык программирования , но почему тогда на нем очень сложно программировать.

Kissa2k (Гость) 4 ответа
3
9 месяцев назад Может ли процессор AMD Phenom быть причиной того, что написанные на ассемблере для intel программы не работают

У меня компиляторы есть, но ни на одном из них компилируемый код не работает. Я начинающий только
Спасибо :) Щас на другом компе с интелом сижу, тут пробую. Надо подучиться )) Никто не подскажет тематический форум об ассемблере?

platon975 (Гость) 2 ответа
3
Ответы (1)
Babl Gam (Гость) 3 года назад
6

; установка видеорежима
; вывод приглашения к вводу
; ввод строки
; проверка длины строки
; обработка строки
; добавляемый символ - пробел
; вывод результата

в двух словах
Программа устанавливает видеорежим, выводит приглашение, читает строку, проверяет ее длину, обрабатывает (вставляет пробел после каждого символа), выводит результат.

Пожаловаться
Ассемблер принцип работы программы (Assembler) - вопросы и ответы на все случаи жизни - справочник Assembler moi-vopros.ru