Ассемблер не изучал, преподаватель на первой паре попросил объяснить данный код
MODEL TINY
STACK 256
DATASEG
Hellostr DB 'Hello First Step Site '
CODESEG
start:
mov ax,@data
mov ds,ax
mov bx,1
mov cx,21
mov dx,offset Hellostr
mov ah,40h
int 21h
mov ah, 04Ch
int 21h
end start
Храни господь того кто мне поможет
Другие языки программирования и технологии
Требуется объяснить каждую строку программы на Assembler
А я продолжу:
mov bx,1; запись 1 в регистр бх
mov cx,21; запись 21 в регистр сх
mov dx,offset Hellostr; запись смещения адреса байтового массива хеллостр в регистр дх
mov ah,40h ;запись 40 в старший байт аккумулятора
int 21h ;вызов прерывания 21
mov ah, 04Ch ; запись 4ц в старший байт аккумулятора
int 21h;вызов прерывания 21
end start ;ничего в общем-то не значит, просто конец ассемблерирования
Сильно помогло?
Ты лучше учитывай такой тонкий момент, что без знания архитектуры все эти объяснения каждой строчки имеют примерно такой вот эффект, который ты сейчас ощутил: все слова вроде понятные, а в общем - непонятно ничего. Поэтому садись за учебник и штудитруй архитектуру, в данном случае это 8080. И заодно выясни, что в ДОСе делает 21-ое прерывание, когда и почему.
mov bx,1; запись 1 в регистр бх
mov cx,21; запись 21 в регистр сх
mov dx,offset Hellostr; запись смещения адреса байтового массива хеллостр в регистр дх
mov ah,40h ;запись 40 в старший байт аккумулятора
int 21h ;вызов прерывания 21
mov ah, 04Ch ; запись 4ц в старший байт аккумулятора
int 21h;вызов прерывания 21
end start ;ничего в общем-то не значит, просто конец ассемблерирования
Сильно помогло?
Ты лучше учитывай такой тонкий момент, что без знания архитектуры все эти объяснения каждой строчки имеют примерно такой вот эффект, который ты сейчас ощутил: все слова вроде понятные, а в общем - непонятно ничего. Поэтому садись за учебник и штудитруй архитектуру, в данном случае это 8080. И заодно выясни, что в ДОСе делает 21-ое прерывание, когда и почему.
Виктор Скыдыщь
архитектуру я постепенно изучаю, просто препод сразу задал вопрос, надо срочно ответить, а дальше уже сам по мере изучения пойму и разберу, спасибо большое
MODEL TINY
Служебная информация для "компилятора", которая говорит какие настройки использовать - в данном случае 16-разрядныое приложение DOS. В этой модели все данные и код располагаются в одном физическом сегменте. Размер программного файла в этом случае не превышает 64 Кбайт
STACK 256
Определение сегмента стека.
DATASEG
Начало или продолжение сегмента инициализированных данных.
Hellostr DB 'Hello First Step Site '
Описание метки Hellostr и "запись" данных-байт
CODESEG
Начало или продолжение сегмента кода
start:
Метка
mov ax,@data
Запись в регистр ax физического адреса сегмента данных типа near
mov ds,ax
Запись в регистр ds значения регистра ax
.......дальше надоело
mov bx,1
mov cx,21
mov dx,offset Hellostr
mov ah,40h
int 21h
mov ah, 04Ch
int 21h
end start
Служебная информация для "компилятора", которая говорит какие настройки использовать - в данном случае 16-разрядныое приложение DOS. В этой модели все данные и код располагаются в одном физическом сегменте. Размер программного файла в этом случае не превышает 64 Кбайт
STACK 256
Определение сегмента стека.
DATASEG
Начало или продолжение сегмента инициализированных данных.
Hellostr DB 'Hello First Step Site '
Описание метки Hellostr и "запись" данных-байт
CODESEG
Начало или продолжение сегмента кода
start:
Метка
mov ax,@data
Запись в регистр ax физического адреса сегмента данных типа near
mov ds,ax
Запись в регистр ds значения регистра ax
.......дальше надоело
mov bx,1
mov cx,21
mov dx,offset Hellostr
mov ah,40h
int 21h
mov ah, 04Ch
int 21h
end start
Hamidillo Madazimov
:) «Храни господь того кто мне поможет», так все ему надоели, как тебе описывать этот код
Похожие вопросы
- Как написать программу для assembler (ассемблер)?
- Нужна помощь с программой на ассемблере - комментирование каждой строки
- не могу сдать преподу программу, требует объяснения чуть ли не каждой строки. в программе на 100% не разбираюсь. С++
- Ребят объясните каждую строчку кода Assembler, вроде лёгко, но я туплю...
- Помогите написать программу в Assembler НАЙТИ СУММУ ЦИФР 3-ЗНАЧНОГО ЧИСЛА И ПРОИЗВЕДЕНИЕ 4-ЗНАЧНОГО ЧИСЛА
- Помогите поправить программу по assembler чтобы работала пожалуйста
- Дан двумерный масссив. Найти и вывести максимальный элемент каждой строки. Turbo Pascal
- Помогите испрвить код Переписать первые элементы каждой строки матрицы a(n*m), больше некоторого числа C, в массив b .
- в книге 280 страниц на каждой странице 40 строк в каждой строке 65 символов можно ли эту книгу уместить в дискету
- в матрице Х (8,5) найти среднее арифметическое значение максимальных элементов в каждой строке