Последние записи
- TChromium (CEF3), сохранение изображений
- Как в Delphi XE обнулить таймер?
- Изменить цвет шрифта TextBox на форме
- Ресайз PNG без потери прозрачности
- Вывод на печать графического файла
- Взаимодействие через командную строку
- Перенести программу из Delphi в Lazarus
- Определить текущую ОС
- Автоматическая смена языка (раскладки клавиатуры)
- Сравнение языков на массивах. Часть 2
Интенсив по Python: Работа с API и фреймворками 24-26 ИЮНЯ 2022. Знаете Python, но хотите расширить свои навыки?
Slurm подготовили для вас особенный продукт! Оставить заявку по ссылке - https://slurm.club/3MeqNEk
Online-курс Java с оплатой после трудоустройства. Каждый выпускник получает предложение о работе
И зарплату на 30% выше ожидаемой, подробнее на сайте академии, ссылка - ttps://clck.ru/fCrQw
8th
Июн
TASM — возврат через стек, адрес, регистр
Posted by obzor under assembler
Асм вообще не дается, снизу размещу мои попытки и стартовый код…
Старт:
data segment
string db 80 dup('$'),'$'
data ends
code segment
assume cs:code,ds:data
start: mov ax,data
mov ds,ax
xor cx,cx
mov ah,01h
inpt: int 21h
cmp al,0dh
je crlf
inc cx
push ax
jmp inpt
crlf: mov ah,02h
mov dl,al
mov dl,0ah
outpt: pop dx
int 21h
loop outpt
QUIT: mov ax, 4c00h
Int 21h
code ends
end START
Мои попытки:
data segment
string db 80 dup('$'),'$'
data ends
code segment
assume cs:code,ds:data
; get string
input proc NEAR
go:
int 21h
cmp al,0dh
je crlf
inc cx
push ax
jmp go
RET ; регистр ax
input endp
; print string
output proc NEAR
pop dx
int 21h
loop output
RET
output endp
;crlf proc NEAR
; mov ah,02h
; RET
;crlf endp
start: mov ax,data
mov ds,ax
xor cx,cx
mov ah,01h
call input
;call crlf
;call output
crlf: mov ah,02h
mov dl,al
mov dl,0ah
QUIT:
call output
mov ax, 4c00h
Int 21h
code ends
end START
возврат значения из процедуры через регистр
Код:
N1 proc
. . . ; какие-то вычисления
mov ax,результат вычислений
retn ; выход из процедуры
N1 endp
возврат значения из процедуры через ячейку в памяти
Код:
N2 proc
. . . ; какие-то вычисления
mov [ячейка в памяти],результат вычислений
retn ; выход из процедуры
N2 endp
возврат значения из процедуры через стек
Код:
N3 proc
. . . ; какие-то вычисления
mov bx,sp
mov ss:[bx+2],результат вычислений
retn ; выход из процедуры
N3 endp
Случайные статьи
Купить рекламу на сайте за 1000 руб
пишите сюда - alarforum@yandex.ru
Да и по любым другим вопросам пишите на почту
пеллетные котлы
Пеллетный котел Emtas
Наши форумы по программированию:
- Форум Web программирование (веб)
- Delphi форумы
- Форумы C (Си)
- Форум .NET Frameworks (точка нет фреймворки)
- Форум Java (джава)
- Форум низкоуровневое программирование
- Форум VBA (вба)
- Форум OpenGL
- Форум DirectX
- Форум CAD проектирование
- Форум по операционным системам
- Форум Software (Софт)
- Форум Hardware (Компьютерное железо)