Форум программистов, компьютерный форум, киберфорум
Наши страницы
Assembler, MASM, TASM
Войти
Регистрация
Восстановить пароль
 
Harts
0 / 0 / 1
Регистрация: 17.03.2013
Сообщений: 22
1

Программа работает не по алгоритму при ввод пароля

19.11.2014, 15:32. Просмотров 320. Ответов 0
Метки нет (Все метки)

Здравствуйте, помогите пожалуйста найти не стыковку в коде.
При вводе пароля, программа работает не так как мне кажется.
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
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
.model small
.data
    Msg db 'qw'
    InputMsg db 'Введите пароль: $'
    MsgAccept db 'Пароль верен$'
    MsgWrongEx db 'Попытка исчерпана$'
    InputMsgPass db 10 dup(?)
    
    Input db 'Ввод: $'
    FinInp db 7,'Выйти из программы:'
    yes db 'Да(Y)'
    no db 'Нет(N)'
    str db 10 dup(?)
    str1 db 10 dup(?)
    str2 db 10 dup(?)
.stack 256h
.code
main:
    mov ax,@data
    mov ds,ax
    mov es,ax
    
;<Рамка>
start:  
inc bx
    mov ah,06h
        mov al,0
        mov bh,00fh
        mov cl,0
        mov ch,0
        mov dh,24
        mov dl,79 
    int 10h
    mov ah,06h
        mov al,0
        mov bh,0f0h 
        mov cl,1
        mov ch,1
        mov dl,78
        mov dh,23
    Int 10h
jmp NotVer
;</Рамка>
;<Пароль>
NotVer: 
;<Ввод пароль>
    mov ah,02h
        mov bh,0
        mov dh,2
        mov dl,3
    int 10h     
        lea dx,InputMsg
            mov ah,09h
        int 21h
;</Ввод пароль>
    mov cx,9
        mov ah,02h
            mov bh,0
            mov dh,2
            mov dl,19
        int 10h
msg1:   mov ah,07h
        int 21h 
        cmp al,0
jne msg2        
msg2:   cmp al,1bh
        je fin  
        cmp al,13
        je msg3
        mov al,'*'
loop msg2
 
    mov dl,al
        mov ah,02h
        int 21h
        mov [si],al
        inc si
        inc cx
        cmp cx,9
    jne msg1
msg3:   xor bx,bx 
        cld 
        mov cx,2
        lea si,Msg
        lea di,InputMsg
        repe cmpsb
        je Verno ;правильно
        cmp bx,3
        jne NotVer
        mov ah,02h
            mov bh,0
            mov dh,3
            mov dl,3
        int 10h
            lea dx,MsgWrongEx
        mov ah, 09h
        int 21h
        xor ax,ax 
        int 16h
jmp start
            
Verno:      mov ah,02h
                mov bh,0
                mov dh,3
            mov dl,3
        int 10h
        lea dx,MsgAccept
            mov ah, 09h
        int 21h
        xor ax,ax 
        int 16h
jmp Msg5
;</Пароль>
fin:jmp fin1
;<Рамка>
Msg5:mov ah,06h
        mov al,0
        mov bh,0f0h 
        mov cl,1
        mov ch,1
        mov dl,78
        mov dh,23
    Int 10h
;</Рамка>
;<Ввод>
    mov ah,02h
        mov bh,0
        mov dh,2
        mov dl,3
    int 10h 
    lea dx,Input 
    mov ah,09h
    int 21h
;</Ввод>
;<Копия 1>
    lea si,str
    mov cx,0
        
inp1: mov ah,07h
        int 21h 
        cmp al,0
        jne inp2    
        mov ah,07h
        int 21h 
    jmp inp1
    
inp2: cmp al,1bh
        je fin1 
        cmp al,13
        je inp3 
    mov dl,al
        mov ah,02h
        int 21h
        mov [si],al
        inc si
        inc cx
        cmp cx,64
    je inp3
    jmp inp1 
fin1:jmp finish 
 
inp3: mov [si], byte ptr '$'
    mov cx,10
    mov ah,02h 
        mov bh,0
        mov dl,9
    int 10h
    
    mov ah, 13h ;Вывод
        mov al, 1 
        mov bh, 0
        mov bl, 0f1h
        mov cx, 5
        mov dh, 4
        lea bp, str
    int 10h 
;</Копия 1> 
;<Копия 2>  
    lea si,str
    lea di,str1
        mov cx,10
        rep movsb
    mov [di], byte ptr '$'
    mov ah, 02h
        mov bh, 0
        mov dl, 9
    int 10h
    mov ah, 13h ;Вывод
        mov al, 1 
        mov bh, 0
        mov bl, 0f2h
        mov cx, 5
        mov dh, 5
        lea bp, str1
    int 10h 
;</Копия 2> 
;</Копия 3> 
    lea si,str
    lea di,str2
        mov cx,10
        rep movsb
    mov [di], byte ptr '$'
    mov ah, 02h
        mov bh, 0
        mov dl, 9
    int 10h
    mov ah, 13h ;Вывод
        mov al, 1 
        mov bh, 0
        mov bl, 0f5h
        mov cx, 5
        mov dh, 6
        lea bp, str2
    int 10h
jmp finish
;</Копия 3>
sta: jmp start
;<Конец>        
finish: mov ah,02h
        mov bh,0
        mov dl,27
    int 10h 
    mov ah, 13h
        mov al, 1 
        mov bh, 0
        mov bl, 0f4h
        mov cx, 19
        mov dh, 10
        lea bp, FinInp
    int 10h
    mov ah,02h
        mov bh,0
        mov dl,29
    int 10h
    mov ah, 13h
        mov al, 1 
        mov bh, 0
        mov bl, 0f4h
        mov cx, 5
        mov dh, 11
        lea bp, yes
    int 10h
    
    mov ah,02h
        mov bh,0
        mov dl,38
    int 10h
    mov ah, 13h
        mov al, 1 
        mov bh, 0
        mov bl, 0f4h
        mov cx, 6
        mov dh, 11
        lea bp, no
    int 10h
    mov ah,02h
        mov bh,0
        mov dh,24
        mov dl,0
    int 10h 
    mov ah,07h
    int 21h 
        cmp al,78
        je sta
        cmp al,110
        je sta
        cmp al,89
        je finend
        cmp al,121
        je finend
finend: 
;</Конец>
mov ah,0
int 16h
mov ah,4ch
int 21h
end main
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.11.2014, 15:32
Ответы с готовыми решениями:

Разложение чисел на слагаемые, объясните по какому алгоритму работает программа
вот код оконного приложения: procedure TForm1.Button1Click(Sender: TObject); var N: Integer; a:...

Автоматический ввод пароля при пробуждении
Начальные данные таковы: Есть рабочий АРМ(Win7 Pro x86), с установленной системой защиты...

Ввод пароля при загрузке системы
:( Стоит Windows 7 Starter. Вчера установил пароль... Переводил ноут в спящий режим, при входе...

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

Автоматический ввод пароля при открытии файла Excel
Добрый день! По работе каждый день приходится сталкиватся с множеством Excel-файлов, на которых...

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.11.2014, 15:32

Как отключить ввод пароля на роутере при подключении к Интернету?
Как-то странно. На роутере не стоит пороль, но убунта требует ввести его при попытке подключится к...

Просит ввод доменного пароля при подключении к Интернету ADSL
Здраствуйте! Windows 10 стала просить некие логин и пароль (снизу ещё надпись &quot;Домен:&quot; и пустота)...

Ввод пароля при выполнении программы, запущенной из BAT-файла
Почти уверен, что решается поиском, но первичный ничего толкового не дал. Во всяком случае,...


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

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

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