 |
::
Меню :: |
 |
|
|
 |
::
Друзі :: |
 |
|
|
 |
::
Лічильники :: |
 |
|
|
|
Асемблер, допоможіть знайти помилку
Юрій Петров
Асемблер, допоможіть знайти помилку
Доброго дня! Нещодавно почав освоювати асемблер, все йшло непогано, але зіткнувся з проблемою коду, яку не знаю, як вирішити. Вже котрий день, вже важливо хочеться вирішення знайти завдання. Покажіть, що не так, тому що всі способи можливого рішення перепробував, але нічого не виходить у результаті. Ось наявний код: SMALL stack 100h dataseg MASS db 1h,2h,3h,4h,5h,6h,7h,8h,9h,10h codeseg startupcode lea BX, MASS ; Завантажити адресу масиву mov si, 9 mov CX, 5; Встановити лічильник BEG: mov AX, [BX] mov DX, [BX+si] mov [BX],DX mov [BX+si],AX inc дебаггере шукати потрібне місце, де зупинитися) ;Кінець роботи QUIT: exitcode 0 end ;Переставити числа у зворотному порядку. Масив байтів. ;відповідь 10 9 8 7 6 5 4 3 2 1
Відповіді:
Def
У вас розмір елемента в масиві 1 байт, а ви оперуєте словами 2 байта, відповідно при записі там затираються значення в сусідніх елементах. mov AL, byte ptr [BX]; і так далі
|
 |
::
Наша кнопка :: |
 |
|
 |
Отримати код:
|
Підтримайте наш сайт і розмістіть нашу
кнопку на своєму ресурсі. |
|
|
 |
::
Популярне :: |
 |
|
|
 |
:: Посилання :: |
 |
|
|
|