Форум программистов, компьютерный форум, киберфорум
Assembler: Windows/protected mode
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/3: Рейтинг темы: голосов - 3, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 16.12.2014
Сообщений: 5
1

Собрать и откомпилировать программу

27.02.2016, 10:54. Показов 516. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Помогите! Первый раз столкнулся с ассемблером, в нем ничего не понимаю. Есть части кода, из них надо собрать работающую программу, указать что делает каждая строка. Очень прошу! И в каком компиляторе его потом запустить и как? Код который нужно собрать и отладить прикреплен ниже
https://drive.google.com/file/... sp=sharing
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
27.02.2016, 10:54
Ответы с готовыми решениями:

Откомпилировать программу в tasm
Помогите откомпилировать прогу в tasm! .modeltiny .386 .data a dw 8; a dw 9; c dw 1994; ...

Изучение tasm. Не получается откомпилировать программу
Здравствуйте, уважаемые форумчане!) Пыталась программу написать на tasm, но компилятор tasm.exe...

Не откомпилировать в MASM32
Здравствуйте форумчане! Как правильно компилировать программу в MASM32. У меня при компиляции...

Нужно просто откомпилировать
Помогите пожалуйста откомпилировать файл Там в программе стоит запись что сделал его "студент...

2
0 / 0 / 0
Регистрация: 16.12.2014
Сообщений: 5
28.02.2016, 17:27  [ТС] 2
поковырялся вот что получилось.
но не удается его скомпилировать, я так понял что надо его компилировать в masm32 но у меня не получается
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
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
.386                        ;будут использоваться команды процессора  i80x386
.model flat, stdcall        ;модель апмяти сплошная модель функция чистит свои параметры
    option casemap : none   ;чувствительность к регистру нет
    
    include \masm32\include\windows.inc ;подключение директив
    include \masm32\include\user32.inc
    include \masm32\include\kernel32.inc
    include \masm32\include\masm32.inc
    includelib \masm32\lib\user32.lib
    includelib \masm32\lib\kernel32.lib
    includelib \masm32\lib\masm32.lib
.data                       ;раздел описание переменных
    conTitle    DB "Convert to upper", 0
    mesl        DB "Before: ", 0
    len_mesl    EQU $-mesl
    mes2        DB "After: ", 0
    len mes2    EQU $-mes2
    
    Si          DB "a string must be converted to upper!", Odh, Oah, 0
    LSI         EQU $-Sl
    CharBuf     DB " ", 0
    len_charBuf DD $-charBuf
    readBuf     DB ? 
    lenReadBuf  DD 1
    
    hStdln      DD 0
    hStdOut     DD 0
 
    chrsRead    DD 0
    chrsWritten DD 0
    
    STD_INP_HNDL    DD -10
    STD OUTP HNDL   DD -11
.code
 
start: 
call    AiiocConsoie
test    EAX, EAX
jz      ex
push    offset conTitle
call    SetConsoleTitleA
test    EAX, EAX
jz      ex
call    getout_hndl
call    getinp hndl
 
push    EBX
mov     EBX, offset mesl
 
mov     ЕСХ, len_mesl
call    write_con
pop     EBX
 
push    EBX
mov     EBX, offset SI
mov     ECX, LSI
call    write_con
pop     EBX
 
push    EBX
mov     EBX, offset mes2
mov     ECX, len_mes2
call    write_con
pop     EBX
; преобразование символов из нижнего регистра в верхний
lea     ESI, DWORD PTR SI
mov     ECX, DWORD PTR LSI
 
next: 
    mov     AL, BYTE PTR [ESI] 
    cmp     AL, 'a'
    jb      next_addr
    cmp     AL, 'z'
    ja      next_addr
    and     AL, Odfh
    mov     BYTE PTR [ESI], AL
next_addr: 
    inc     ESI
    loop    next
    
    push    EBX
    mov     EBX, offset SI
    mov     ECX, LSI
    call    write_con
    pop     EBX
; ожидание ввода с консоли и выход
    call read con
ex: 
    push 0
    call ExitProcess
;Процедуры
getout_hndl proc 
    push    STD_OUTP_HNDL
    call    GetStdHandle
    mov     hStdOut, EAX
    ret
getout_hndl endp
 
getinp_hndl proc
    push    STD_INP_HNDL
    call    GetStdHandle
    mov     hStdln, EAX
    ret
getinp_hndl endp
 
write_con proc
    push    0
    push    chrsWritten
    push    ECX
    push    EBX
    push    hStdOut
    call    WriteConsoleA
    ret
write_con endp
 
read_con proc
    push    0
    push    chrsRead
    push    lenReadBuf
    push    offset readBuf
    push    hStdln
    call    ReadConsoleA
    mov     hStdOut, EAX
    ret
read_con endp
 
end start
кто может исправить ошибки, какие тут есть и прокомментировать каждую строчку как в начале
0
0 / 0 / 0
Регистрация: 16.12.2014
Сообщений: 5
06.03.2016, 10:30  [ТС] 3
разобрался сам, можно закрыть тему
0
06.03.2016, 10:30
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
06.03.2016, 10:30
Помогаю со студенческими работами здесь

Откомпилировать дизассемблированный код
есть такая прога static void Main(string args) { Console.WriteLine(999); ...

Откомпилировать программу
Кто - нибудь может исправить программу, а то не могу получить результат. Пожалуйста. Нужен в...

Как откомпилировать программу
Привет всем еще раз,помогите пожалуйста uses Drawman; begin Field(14,14); ToPoint(1,1);...

C++ не могу откомпилировать программу
Всем привет помогите плиз с проблемой начал учить язык по книге пользуюсь Microsoft Visual Stusio...


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

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