Все про Assembler українською мовою на сайті net.kr.ua

 

:: Меню ::

Головна
Введення
Архітектура реального режиму
Основи програмування
Команди і алгоритми
Розширені можливості сучасних мікропроцесорів
Система команд процесорів Intel
Книга для гостей
Контакти
Добавити у вибране

:: Друзі ::

 
 

:: Лічильники ::

=

 

 

 

 

fff00e50

Асемблер, допоможіть знайти помилку

Юрій Петров
Асемблер, допоможіть знайти помилку
Доброго дня! Нещодавно почав освоювати асемблер, все йшло непогано, але зіткнувся з проблемою коду, яку не знаю, як вирішити. Вже котрий день, вже важливо хочеться вирішення знайти завдання. Покажіть, що не так, тому що всі способи можливого рішення перепробував, але нічого не виходить у результаті. Ось наявний код: 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]; і так далі




:: Наша кнопка ::

Отримати код:

Підтримайте наш сайт і розмістіть нашу кнопку на своєму ресурсі.


:: Популярне ::

-


:: Посилання ::

-


 

 

 


Copyright © net.kr.ua, 2019-2025 (assem.us)