Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > Низкоуровневое программирование > Assembler
Регистрация

Восстановить пароль
Повторная активизация e-mail


Ответ
 
Опции темы
Старый 21.05.2018, 10:35   #1
candro
Новичок
 
Регистрация: 31.05.2009
Сообщений: 3
Репутация: 10
По умолчанию Начало изучения ассемблера

Купил книгу "Ассемблер это просто" и начал изучать сей предмет. Вроде бы по началу понятно, но есть некоторые вопросы. Автор книги не оставил свою электронную почту или страницу ВК, поэтому я вынужден задавать вопросы на форумах.

Вот один из листингов.

Код:

mov al,10       ; загружаем в регистр al число 10
mov al,15       ; al=25; al-приемник, 15-источник
mov ax,25000  ; загружаем в регистр ах число 25000
add ax,10000  ; ах=35000;ax-приемник, 1000-источник
mov cx,200     ; загружаем в регистр сх число 200
mov bx,760     ; а в регистр bx-760
add cx,bx       ; cx=960;bx=760(bx не меняется);сх-приемник
                    ; bx-источник


Собственно, что я не понимаю

строка 2: mov al,15 ; al=25; al-приемник, 15-источник

Почему источник просто цифра без буквенного обозначения (15)?

Далее строка 3 и 4:
mov ax,25000 ; загружаем в регистр ах число 25000
add ax,10000 ; ах=35000;ax-приемник, 1000-источник

Откуда вязалась 35000, почему не 25000?

Последний раз редактировалось Alex11223; 21.05.2018 в 10:45.
candro вне форума   Ответить с цитированием
Старый 21.05.2018, 10:45   #2
Serge_Bliznykov
МегаМодератор
СуперМодератор
 
Регистрация: 09.01.2008
Сообщений: 24,354
Репутация: 5274
По умолчанию

Цитата:
Сообщение от candro Посмотреть сообщение
Код:

mov al,10 ; загружаем в регистр al число 10
mov al,15 ; al=25; al-приемник, 15-источник

тут похоже опечатка.
предполагалось:
Код:

mov al,10 ; загружаем в регистр al число 10
add al,15 ; al=25; al-приемник, 15-источник

Код:

mov ax,25000 ; загружаем в регистр ах число 25000
add ax,10000 ;  ах=35000;ax-приемник, 1000-источник

add - это команда суммирования. (погуглите слово ADD - перевод с английского ).
к значению, которое находится в регистре ax (это число 25000)
прибавляем значение константы, заданной в команде (10000).
результат (35000) помещаем в исходный регистр ax.
Serge_Bliznykov вне форума   Ответить с цитированием
Старый 21.05.2018, 10:58   #3
candro
Новичок
 
Регистрация: 31.05.2009
Сообщений: 3
Репутация: 10
По умолчанию

Цитата:
Сообщение от candro Посмотреть сообщение
mov al,10 ; загружаем в регистр al число 10
add al,15 ; al=25; al-приемник, 15-источник
mov ax,25000 ; загружаем в регистр ах число 25000
add ax,10000 ; ах=35000;ax-приемник, 1000-источник
mov cx,200 ; загружаем в регистр сх число 200
mov bx,760 ; а в регистр bx-760
add cx,bx ; cx=960;bx=760(bx не меняется);сх-приемник
; bx-источник
Вот правильный код. Я сам не правильно записал.

Что не понятно.

1 строка. move al,10 загрузили в регистр al число 10. (это мне понятно)
2.строка add al,15 не понятно почему число 25?

Вообще не понятно для чего столько чисел, что с чем складывает программа?

Я так понимаю 10+25; 25 000+10 000

А дальше что? 760+200?
candro вне форума   Ответить с цитированием
Старый 21.05.2018, 11:04   #4
Аватар
Модератор
Заслуженный модератор
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Адрес: Северодонецк.ua
Сообщений: 17,946
Репутация: 6285
По умолчанию

Надо полагать, что это пример работы инструкции add и числа взяты от фонаря ))
__________________
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
начало изучения c++ Pаrtizan Общие вопросы C/C++ 6 16.03.2013 12:11
Начало изучения C++ Gnomowar Общие вопросы C/C++ 6 29.04.2012 08:04
начало изучения chircov090993 Общие вопросы C/C++ 14 06.01.2012 13:44
Изучение ассемблера, начало Lich Assembler 2 18.06.2008 14:16


15:55.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru