Форум программистов, компьютерный форум, киберфорум
Наши страницы
Assembler для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.50/4: Рейтинг темы: голосов - 4, средняя оценка - 4.50
Johnlion
62 / 2 / 1
Регистрация: 11.05.2011
Сообщений: 666
1

Ассемблерный листинг

26.11.2013, 20:52. Просмотров 693. Ответов 1
Метки нет (Все метки)

Подскажите, пожалуйста, что в ассемблерных листингах такого типа (ниже) означают 1й и 2й столбцы? Где про это почитать можно?
Assembler
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
includelib kernel32.lib
 
 00000000           .data
 
 00000000 01 08 03 04 05        A_npacked db  1, 8, 3, 4, 5, 4
       04
 00000006 00 00 00 00 05        B_npacked db  0, 0, 0, 0, 5, 4
       04
 
 0000000C 18 34 54          A_packed db 18h, 34h, 54h
 0000000F 00 00 54          B_packed db 00h, 00h, 54h
 
 00000012 07 06 04 03 04        X_npacked db 7, 6, 4, 3, 4
 00000017 07                Y_npacked db 7
 
 00000018  00000006 [           RES_SUM db 6 dup (0)    ; рез. суммы неупакованных A и B
        00
       ]
 0000001E  00000006 [           RES_DIFFER db 6 dup (0) ; рез. разности упакованных A и B
        00
       ]
 00000024  00000005 [           RES_DIV db 5 dup (0)    ; рез. деления неупакованных X и Y
        00
       ]
 
 00000000           .code
 
 00000000           main proc
 
                ;===================
                ; неупакованные A+B
                ;===================
 
 00000000  B9 00000006          mov ecx, LENGTHOF A_npacked
 
 00000005               goSUM:
 00000005  8D 59 FF             lea ebx, [ecx-1]    ; ebx = ecx - 1
 00000008  8A 83 00000000 R         mov al, A_npacked[ebx]  
 0000000E  12 83 00000006 R         adc al, B_npacked[ebx]  ; al = A_npacked[ebx] + B_npacked[ebx]
 00000014  37                   aaa         ; коррекция суммы
 00000015  66| 9C               pushf       ; сохранение флагов для сохранения переноса
 00000017  04 30                add al, 30h   ; преобразование в ASCII
 00000019  88 83 00000018 R         mov RES_SUM[ebx], al     
 0000001F  66| 9D               popf   ; изъятие флагов
 00000021  E2 E2            loop goSUM
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.11.2013, 20:52
Ответы с готовыми решениями:

Получить ассемблерный листинг из кода на с++
Здравствуйте! Требуется написать программу на ассемблере, которая бы занималась неким...

Cамый краткий листинг - самый подробный листинг.
Здравствуйте. Надо провести трансляцию программы SIMPLE.ASM с использованием TASM.EXE и...

Написать ассемблерный код под мое условие
Вот есть условия для компилятора, за его критериями написать тестовую программу(просто написать...

Как просмотреть ассемблерный код программы, написанной на с++ в VS 2010
Как просмотреть ассемблерный код проги написанной на с++ в VS 2010 ? (Там вроде надо пройтись в...

Как писать чисто ассемблерный код в Visual Studio 2015 ?
Прочитал вот эту статейку https://habrahabr.ru/post/252647/ всё работает при условии, что на компе...

1
sh2ezo
1126 / 260 / 9
Регистрация: 11.06.2010
Сообщений: 1,050
27.11.2013, 10:37 2
первый - это, наверное, смещение от начала секции.
второй - это представлении инструкции в HEX-кодах
1
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.11.2013, 10:37

На каком Visual Studio можно отлаживать ассемблерный код для винды 32р
Какую Visual Studio лучше скачать?, что бы можно было пользоваться отладчиком для ассемблера,...

Проверьте листинг
Листинг . Умножение неупакованных BCD-чисел <1> masm <2> model small <3> stack 256 <4>...

Это листинг?
Это похоже на листинг? Start Stop Length Name Class 00000H 00044H 00045H...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru