С Новым годом! Форум программистов, компьютерный форум, киберфорум
Assembler для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/15: Рейтинг темы: голосов - 15, средняя оценка - 4.80
0 / 0 / 0
Регистрация: 20.07.2017
Сообщений: 2
1

Найти абсолютный адрес байта

30.10.2017, 11:56. Показов 2934. Ответов 7
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Даны команды:
1. mov dx, 40h
2. add ax, bx
3. mov al, [si]

Для каждой нужно найти абсолютный адрес байта. Как это можно сделать?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
30.10.2017, 11:56
Ответы с готовыми решениями:

Абсолютный адрес байта
Помогите пожалуйста определить абсолютный адрес байта. Задача была такая Выполнить арифметическую...

Как преобразовать относительный адрес файла в абсолютный?
Я создал файл Как преобразовать относительный адрес в абсолютный? И как записать текст в этот...

Как определить абсолютный адрес каталога /WINDOWS/?
На компьютере имеется несколько операционных систем Windows, как программно можно узнать текущую OS...

Как сделать массив-указатель на абсолютный адрес в FLASH?
Хочу сделать вот так: uint32_t addr=0x0801FC00; uint8_t CFG uint8_t * TCFG; TCFG=...

7
Asm/C++/Delphi/Py/PHP/VBA
6750 / 1997 / 231
Регистрация: 14.12.2014
Сообщений: 4,200
Записей в блоге: 12
30.10.2017, 12:15 2
Адрес есть только в 3-й строке. Он будет = содержимому si.
0
3408 / 1827 / 489
Регистрация: 28.02.2015
Сообщений: 3,696
30.10.2017, 15:59 3
Цитата Сообщение от Jin X Посмотреть сообщение
Адрес есть только в 3-й строке.
В первой тоже может быть адрес, к примеру в сегменте данных выводимая строка начинается с DS : 40h
0
Прощай, Мир!
1673 / 831 / 253
Регистрация: 26.05.2012
Сообщений: 3,056
30.10.2017, 17:04 4
Цитата Сообщение от Constantin Cat Посмотреть сообщение
тоже может быть адрес
Цитата Сообщение от Constantin Cat Посмотреть сообщение
строка начинается с DS : 40h
а еще после векторов прерываний идет область BIOS.. эта область данных начинается с адреса 0040:0000h..
0
Модератор
Эксперт по электронике
8541 / 4393 / 1651
Регистрация: 01.02.2015
Сообщений: 13,649
Записей в блоге: 9
30.10.2017, 17:35 5
Возможно, само условие задания сильно сокращено.

Не по теме:

Так недавно отвечал на вопрос по обработки строки на асме, а выяснилось, что нужна раздельная компиляция в QuickC c+asm.
Весь подраздел "Математика" завален темами под emu8086, а в действительности (я так думаю по ряду признаков) нужны программы под Windows.

aleksgolovnya, приведите исходную постановку задачи.
0
0 / 0 / 0
Регистрация: 20.07.2017
Сообщений: 2
30.10.2017, 17:52  [ТС] 6
Привести примеры режимов адресации памяти. Для этих примеров вычислить абсолютный адрес байта.
0
Прощай, Мир!
1673 / 831 / 253
Регистрация: 26.05.2012
Сообщений: 3,056
30.10.2017, 17:56 7
Цитата Сообщение от aleksgolovnya Посмотреть сообщение
вычислить абсолютный адрес байта
абсолютный адрес = физический адрес = логический адрес сегмента * 16 + логический адрес смещения байта..
0
Модератор
Эксперт по электронике
8541 / 4393 / 1651
Регистрация: 01.02.2015
Сообщений: 13,649
Записей в блоге: 9
30.10.2017, 20:24 8
aleksgolovnya, в
https://www.cyberforum.ru/post5323071.html
есть раздел "Режимы адресации"

Только учтите, там приводятся примеры 32-разрядного кода.
Их 16-разрядные аналоги:
1. mov ax, dx
2. mov ax,[4010h]
3. mov ax,[si]
4. mov ax,[si+1000h]
5. mov ax,[bx+di]
6. mov ax,[bx+si+1000h]
7. такого в 16-разрядной системе нет
Для каждого случая - тот адрес, что получается при вычислении в скобках это не адрес, а смещение в сегменте. А абсолютный адрес вычисляется по формуле
АбсАдрес= Сегмент*16+Смещение
Значение Сегмент берётся из сегментного регистра, например, в данных примерах - ds. Но т.к. программы перемещаемые, то само это значение на этапе компиляции не известно. Только при запуске программы операционная система загружает в сегментные регистры конкретные числа.

Поэтому, данное задание наполовину лишено смысла - нам неизвестно значение ds.
0
30.10.2017, 20:24
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
30.10.2017, 20:24
Помогаю со студенческими работами здесь

Возможно ли в методе server.transfer использовать абсолютный адрес URL и как?
возможно ли в методе server.transfer использовать абсолютный адрес URL и как?

Вычислить адрес верхушки стека, адрес следующей команды, адрес переменной, адрес которой содержится в BX
Помогите решить следующие задачи: 1.Вычислить адрес верхушки стэка. 2.Вычислить адрес следующей...

Старший бит старшего байта поменять местами с младшим битом младшего байта
Ребят помогите прогу доработать. Задача такая: В одномерном массиве чисел целого типа (16 бит)...

Найти абсолютный путь к файлу по относительному пути
Здравствуйте, надо автоматизировать рутинную работу, решил сделать это на python. В...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru