ЕВ
Екатерина Воронина

4 ошибки в коде ассемблера

TITLEEX_PROG
PAGE,132
STACKSEGMENT PARA STACK ‘STACK’
DB 64 DUP(‘STACK ’) ; Область стека
STACKENDS
DSEGSEGMENT PARA PUBLIC ‘DATA’
SOURCEDB10,20,30,40 ; эта таблица будет скопирована
DESTDB4 DUP(?) ; в эту таблицу в обратном порядке
DSEGENDS
SUBTTLОСНОВНАЯ ПРОГРАММА
PAGE
CSEG SEGMENT PARA PUBLIC ‘CODE’
ASSUME CS:CSEG, DS:DSEG, SS:STACK
OUR_PROGPROC FAR
;занести в стек такие начальные значения, чтобы программа
; могла возвратить управление отладчику
PUSH DS; поместить в стек номер блока адреса возврата
SUB AX,AX; обнулить регистр АХ, тоже можно сделать командойMOV AX,0
PUSH AX; поместить в стек значение адреса возврата=0
; инициировать адрес сегмента данных
MOV AX,DSEG
MOV DS,AX
; присвоить элементам таблицы DEST нулевые начальные значения
MOV DEST,0; обнуление 1-ого байта
MOV DEST+1,0; обнуление 2-ого байта
MOV DEST+2,0; обнуление 3-его байта
MOV DEST+3,0; обнуление 4-ого байта
; скопировать таблицу SOURCE в таблицу DEST в обратном порядке, в качестве промежуточной ячейки пересылки использовать регистр AL
MOV AL, SOURCE
MOV DEST+3,AL
MOV AL, SOURCE+1
MOV DEST+2,AL
MOV AL, SOURCE+2
MOV DEST+1,AL
MOV AL, SOURCE+3
MOV DEST,AL
RET ; возврат управления отладчику db
OUR_PROGENDP
CSEGENDS
ENDOUR_PROG

Когда компилирую, пишет:



Где и что нужно исправить ?

С ошибками разобрался, просто вместо кавычек надо апострофы было поставить.
Что делать с предупреждением ?

ГА
Ганишер Ахмадов

> Что делать с предупреждением ?
STACK - зарезервированное слово и не может быть использовано даже для названия сегмента стека.

Измените имя сегмента, например, так:
STSEG SEGMENT PARA STACK ‘STACK’
DB 64 DUP(‘STACK ’) ; Область стека
STSEG ENDS

ASSUME CS:CSEG, DS:DSEG, SS:STSEG

Похожие вопросы
Нужна помощь с Ассемблером!!!!
Код ошибки 4. при загрузке и попытке восстановить винду с диска пишет код ошибки .Код ошибки 4.
Вставка ассемблера в код C++
запускаю прогу выдаёт ошибку ассемблер +
Ассемблер. Что делает каждая строка в коде?
Ассемблер. Что делает каждая строка в коде?
Ассемблер. Помогите разобраться с кодом
Как перевести машинный код в язык ассемблера
нужен код на ассемблере
ассемблер, длина строки (код в описании)