3 года назад

Assembler нужны комментарии

Нужно напротив каждой строчки написать, что обозначает.model
tiy.codeog
100h
; начало COM-файла stat:
;блок создания файла для записи
mov
ah,3ch
mov
cx,00
lea
dx,fowt
it
21h
jc
eo
mov
file1,ax
;блок открытия файла для чтения
mov
ah,3dh
mov
al,00
lea
dx,foead
it
21h
jc
eo
mov
file2,axcypt:
;блок чтения побайтно
mov
ah,3Fh
mov
bx,file2
mov
cx,01h
lea
dx,codebyte
it
21h
jc
eo
cmp
ax,00
je
close
;блок шифрования
mov
al,6
; номер по списку
add
al,BYTE PTR codebyte
mov
BYTE PTR codebyte,al
;блок записи в файл
mov
ah,40h
mov
bx,file1
mov
cx,01h
lea
dx,codebyte
it
21h
jc
eo
cmp
ax,01h
je
eo
jmp
cyptclose:
mov
ah,3eh
mov
bx,file1
it
21h
mov
ah,3eh
mov
bx,file2
it
21h
jmp
exiteo:
mov
ah,40h
mov
bx,2
mov
dx,offset mes_e
mov
cx,mes_le
it
21hexit:
it
21h
et
fowt  
db
'C:\Cesa.txt',00hfoead
db
'C:\Iput.txt',00hcodebyte
db
' 'file1
dw
?file2
dw
?
mes_e
db
'Eo'mes_le = $-mes_eed
stat
Кароче, программа получилась и работает. комментарии взял отсюда http://www.avpog.aod.u/pogs/fdos01.html

Daniel11 (Гость) Assembler
3
Ответы (1)
дюк . (Гость) 3 года назад
9

ЛОЛ


.model tiny Модели памяти задаются директивой .MODEL

.model модель,язык,модификатор

где модель u2014 одно из следующих слов:

TINY u2014 код, данные и стек размещаются в одном и том же сегменте размером до 64 Кб. Эта модель памяти чаще всего используется при написании на ассемблере небольших программ;

.code сегмент кода
org 100h ; начало COM-файла
start: ;

метка с двоеточием - эта строчка используется для перехода хотя Обычно start ни для чего не используется
;блок создания файла для записи
mov ah,3ch
mov cx,00
lea dx,forwrt ;загрузить адрес строки в регистр дэикс
int 21h

jc error ;если CarryFlag\u003d1 после вызова прерывания ДОС 21 эйч тогда переход на error
mov file1,ax

;блок открытия файла для чтения
mov ah,3dh
mov al,00
lea dx,forread
int 21h

jc error
mov file2,ax

crypt:

;блок чтения побайтно
mov ah,3Fh
mov bx,file2
mov cx,01h
lea dx,codebyte
int 21h

jc error
cmp ax,00
je close

;блок шифрования
mov al,6 ; номер по списку
add al,BYTE PTR codebyte
mov BYTE PTR codebyte,al

;блок записи в файл
mov ah,40h
mov bx,file1
mov cx,01h
lea dx,codebyte
int 21h

jc error
cmp ax,01h
jne error

jmp crypt
close:
mov ah,3eh
mov bx,file1
int 21h

mov ah,3eh
mov bx,file2
int 21h
jmp exit
error:
mov ah,40h
mov bx,2
mov dx,offset mes_er
mov cx,mes_len
int 21h
exit:
int 21h
ret
forwrt db u0027C:\\Cesar.txtu0027,00h
forread db u0027C:\\Input.txtu0027,00h
codebyte db u0027 u0027
file1 dw ?
file2 dw ?

mes_er db u0027Erroru0027
mes_len \u003d $-mes_er

end start




КОРОЧ ПАЧАН ВРЯДЛИ У ТЕБЯ ПРОГРАММА ВЫЙДЕТ

кроме того что из неё не выйдет тут это ещё модуль а не фулл прога видимо

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