Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Ассемблер

73K
01 марта 2012 года
alexander1994
12 / / 18.02.2012
вот код программы на ассемблере
TITLE EX_PROG
PAGE ,132
STACK SEGMENT PARA STACK "STACK"
DB 64 DUP("STACK ") ; Область стека
STACK ENDS
DSEG SEGMENT PARA PUBLIC "DATA"
SOURCE DB 10,20,30,40 ; эта таблица будет скопирована
DEST DB 4 DUP(?) ; в эту таблицу в обратном порядке
DSEG ENDS
SUBTTL ОСНОВНАЯ ПРОГРАММА
PAGE
CSEG SEGMENT PARA PUBLIC "CODE"
ASSUME CS:CSEG, DS:DSEG, SS:STACK
OUR_PROG PROC 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_PROG ENDP
CSEG ENDS
END OUR_PROG

помогите сделать задание а то я вообще не представляю как делать
5.Внести в программу следующие изменения: задать исходную таблицу SOURCE из 5 двухбайтовых шестнадцатеричных переменных и скопировать эту новую таблицу в DEST.
6. В сегменте данных определить переменные, заполнив их следующими значениями:
- 5 байтов A, B, C, D, E;
- 5 двухбайтовых слов AA, BB, CC, DD, EE;
- 5 двойных слов AAAA, BBBB, CCCC, DDDD, EEEE;
7. Получить исполнимый файл программы с данными пункта 6 и изучить дамп памяти данных с целью уяснения механизма выравнивания.

73K
01 марта 2012 года
bolt7
33 / / 20.02.2012
5.
SOURCE DW 10,20,30,40,50 ; эта таблица будет скопирована
DEST DW 5 DUP(?) ; в эту таблицу в обратном порядке
...
MOV DEST+4,0 ; обнуление 5-ого байта
...
изменить Al->AX, дописать 5 элемент
MOV AX, SOURCE+4
MOV DEST,AX
6.
fiva_byte db 'A','B','C','D',E'
five_word dw 'AA','BB',CC','DD',EE
five_dword dd 'AAAA','BBBB','CCCC','DDDD','EEEE'
7. я не знаю на чем ты пишеш программу

8. Есть спец разделы (студентам и низкоуровневое программирование), зачем то здесь тему создавать


73K
02 марта 2012 года
alexander1994
12 / / 18.02.2012
спасибо))
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог