Форум программистов, компьютерный форум, киберфорум
Наши страницы
Assembler, MASM, TASM
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.63/8: Рейтинг темы: голосов - 8, средняя оценка - 4.63
Asm75
1 / 1 / 0
Регистрация: 03.01.2009
Сообщений: 4
1

Проблема с отображением файлов COM

03.01.2009, 16:43. Просмотров 1522. Ответов 10
Метки нет (Все метки)

Интересуюсь языком ассемблер. При изучении уперся в проблему: файлы com компилируются нормально (MASM611), но готовые фалы .COM никак не работают. При запуске появляется черный экран cmd и все. Как запускать созданные файлы .COM?
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.01.2009, 16:43
Ответы с готовыми решениями:

Символы с отображением и без
Здравствуйте, очень нужен алгоритм программки: введение с клавиатуры свободного...

Win7 64x Pro SP1 проблема с отображением удалённых файлов
В Win7 64x Pro SP1 есть проблема с отображением удалённых файлов. Например,...

Проблема с отображением
Всем здравствуйте. Я совсем недавно, а именно 17 числа скачал Delphi 7. С этого...

Проблема с отображением
Ребята как ищменить отображение счетчикаю. Есть счетчик метров. он пишет метрв...

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

10
Vourhey
Почетный модератор
6495 / 2270 / 185
Регистрация: 29.07.2006
Сообщений: 12,534
03.01.2009, 16:46 2
а если их запустить прямо из cmd?
0
Asm75
1 / 1 / 0
Регистрация: 03.01.2009
Сообщений: 4
03.01.2009, 16:52  [ТС] 3
я запускал двумя способами: 1.двойным щелчком 2.набором имени файла.расширение из cmd. А как правильно?
0
Vourhey
Почетный модератор
6495 / 2270 / 185
Регистрация: 29.07.2006
Сообщений: 12,534
03.01.2009, 16:57 4
И так, и так правильно. Вопрос в том, что же прога должна делать, чего она не делает...
0
Asm75
1 / 1 / 0
Регистрация: 03.01.2009
Сообщений: 4
03.01.2009, 17:07  [ТС] 5
результат один: черное окно cmd и программа не выполняет свою задачу. Если нажимаешь ESC окно cmd становится синим (если вызвано двойным щелчком быстро пропадает, а если com-файл запускался из cmd, то предлагает ввести команду как обычно)
0
Vourhey
Почетный модератор
6495 / 2270 / 185
Регистрация: 29.07.2006
Сообщений: 12,534
03.01.2009, 17:16 6
какую задачу, можно узнать? Это задача должна что-то с экраном делать? Прога у тебя запускается. Просто она работает не так, как ты ждешь.
0
Asm75
1 / 1 / 0
Регистрация: 03.01.2009
Сообщений: 4
03.01.2009, 17:37  [ТС] 7
Ну, например, вот эта программа-пример к книге О. Калашникова "Ассемблер - это просто..." должна ждать нажатия клавиши с нерасширенным ASCII-кодом и закрываться после нажатия таковой. В тексте я смотрю много лишнего, но тна выполнение влиять не должно, поскольку комментарии процессором игнорируются. Я набрал эту программу сам, скомпилировал, но результат нулевой. Есть мнение, что "поскольку все программы-примеры к этой книге были написаны для работы под DOS прямая запись в видеопамять под Windows в досовской программе будет работать только после инициализации видеорежима. Т.о., в начале программы необходимо вставить
Код:
mov ax, 0003h"

Сделал -не работает. Кстати, вопрос: куда вставлять вышеуказанный код (после Begin: или куда?? В Бейсике например инициализация видеорежима проводится в самом начале любой программы, а в ассемблере?

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
;              Prog07.asm - Їа®Ја*¬¬* Є ѓ«*ўҐ ь 07
 
; (‘) Ђўв®абЄЁҐ Їа*ў* ** д*©«л-ЇаЁ«®¦Ґ*Ёп ЇаЁ**¤«Ґ¦*в *ўв®аг Є*ЁЈЁ
; "ЂбᥬЎ«Ґа? ќв® Їа®бв®! “зЁ¬бп Їа®Ја*¬¬Ёа®ў*вм Ї®¤ MS-DOS"
; Ђўв®а: Љ*«*и*ЁЄ®ў Ћ«ҐЈ Ђ«ҐЄб**¤а®ўЁз (e-mail: [email]Assembler@Kalashnikoff.ru[/email])
;    [url]http://www.Kalashnikoff.ru[/url]
 
; --- ЂбᥬЎ«Ёа®ў**ЁҐ (Ї®«гзҐ*ЁҐ *.com д*©«*) ---
;ЏаЁ ЁбЇ®«м§®ў**ЁЁ MASM 6.11 - 6.13:
;ML.EXE prog07.asm /AT
 
;ЏаЁ ЁбЇ®«м§®ў**ЁЁ TASM:
;TASM.EXE prog07.asm
;TLINK.EXE prog07.obj /t/x
 
 
CSEG segment
assume cs:CSEG, ds:CSEG, es:CSEG, ss:CSEG
org 100h
 
Begin:
    call Wait_key  ;‚л§лў*Ґ¬ Їа®жҐ¤гаг ®¦Ё¤**Ёп **¦*вЁп Є«*ўЁиЁ
 
    cmp al,27      ;Џ®«м§®ў*⥫м **¦*« ESC?
    je Quit_prog   ;…б«Ё в*Є, в® ** ¬ҐвЄг Quit_prog 
 
    cmp al,0       ;ќв® а*биЁаҐ**л© Є®¤ Є«*ўЁиЁ?
    je Begin       ;…б«Ё в*Є, в® ¦¤Ґ¬ **¦*вЁп б«Ґ¤го饩 Є«*ўЁиЁ 
 
    call Out_char  ;?**зҐ ўлў®¤Ё¬ бЁ¬ў®« ** нЄа**
    jmp Begin      ;? ®¤¦Ё¤*Ґ¬ **¦*вЁп б«Ґ¤го饩 Є«*ўЁиЁ 
 
 
;Џ®«м§®ў*⥫м **¦*« ESC
Quit_prog:
    mov al,32      ;?¬¬ЁвЁа㥬 **¦*вЁҐ ** "Џа®ЎҐ«"
    call Out_char
 
    int 20h        ;‚л室Ё¬ Ё§ Їа®Ја*¬¬л
 
 
 
; === Џ®¤Їа®Ја*¬¬л ===
 
; --- Wait_key ---
Wait_key proc
    mov ah,10h ;”г*ЄжЁп 10h ЇаҐалў**Ёп 16h - ®¦Ё¤**ЁҐ **¦*вЁп Є«*ўЁиЁ
    int 16h
    ret
Wait_key endp
 
 
; --- Out_char ---
Out_char proc
;‚лў®¤Ё¬ бЁ¬ў®« ** нЄа** Їг⥬ ЇаאַЈ® ®в®Ўа*¦Ґ*Ёп ў ўЁ¤Ґ®ЎгдҐа
 
    push cx        ;‘®еа**Ё¬ ў б⥪Ґ Ё§¬Ґ*пҐ¬лҐ ¤***®© Їа®жҐ¤га®© ॣЁбвал
    push ax
    push es
 
    push ax
    mov ax,0B800h  ;ѓ®в®ўЁ¬ ॣЁбвал Є ўлў®¤г бЁ¬ў®«* ** нЄа**
    mov es,ax
    mov di,0
    mov cx,2000    ;Ѓг¤Ґ¬ ўлў®¤Ёвм 2000 а*§ (80 * 25 = 2000 - ўҐбм нЄа**)
    pop ax
    mov ah,31      ;ЂваЁЎгвл ўлў®¤Ё¬®Ј® бЁ¬ў®«*
 
Next_sym:
    mov es:[di],ax
    inc di         ;“ўҐ«ЁзЁў*Ґ¬ гЄ*§*вҐ«м ўлў®¤* бЁ¬ў®«* ** 2
    inc di
    loop Next_sym  ;‘«Ґ¤гойЁ© бЁ¬ў®« 
 
    pop es         ;‚®ббв**®ўЁ¬ б®еа**Ґ**лҐ ў б⥪Ґ ॣЁбвал
    pop ax
    pop cx
    ret
Out_char endp
 
 
CSEG ends
end Begin
А вот код, набранный самостоятельно:
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
CSEG segment
assume cs:CSEG, ds:CSEG, es:CSEG, ss:CSEG
    org 100h
 
Begin:
mov ax,0003h
int 10h
call Wait_key
cmp al,27
je Quit_prog
cmp al,0
je Begin
 
call Out_char
jmp Begin
 
Quit_prog:
mov al,32
 
call Out_char
int 20h
 
;Подпрограммы
;Wait_key
Wait_key proc
mov ah,10h
int 16h
  ret
Wait_key endp
 
;Out_char
Out_char proc
push cx
push ax
push es
 
push ax
mov ax,0B800h
mov es,ax
mov di,0
mov cx,2000
pop ax
mov ah,31
 
Next_sym:
mov es:[di],ax
inc di
inc di
loop Next_sym
 
pop es
pop ax
pop cx
  ret
Out_char endp
 
CSEG ends
end Begin
Добавлено через 17 минут 42 секунды
Причем не работает не только эта программа, но также все остальные com (exe не знаю, поскольку еще не пробовал их создавать) )
1
Avatar88
2 / 2 / 0
Регистрация: 07.02.2009
Сообщений: 21
15.03.2009, 11:12 8
Поставь тесм...
запускай с командной строки в борланд паскаль и все будет в порядке!
0
--RaiaN--
0 / 0 / 0
Регистрация: 24.03.2009
Сообщений: 1
28.03.2009, 04:29 9
"Поставь тесм...
запускай с командной строки в борланд паскаль и все будет в порядке!"
Помогите,Темс я потавил и просто TASM и TASM32. Можно поподробнее "запускай с командной строки в борланд паскаль и все будет в порядке!"

Добавлено через 8 минут 47 секунд
Цитата Сообщение от --RaiaN-- Посмотреть сообщение
"Поставь тесм...
запускай с командной строки в борланд паскаль и все будет в порядке!"
Помогите,Темс я потавил и просто TASM и TASM32. Можно поподробнее "запускай с командной строки в борланд паскаль и все будет в порядке!"
А,прошу прощения,разобрался.Спасибо Asm75'у за код mov ax, 0003h
0
rdtsc
7 / 7 / 0
Регистрация: 20.08.2008
Сообщений: 44
16.06.2009, 14:36 10
уши вянут..произноистся не Тесм, а Тасм..

Добавлено через 30 секунд
а также масм, насм, фасм и другие..Вы же есемблер не говорите
1
Haster
инженер-системотехник
111 / 110 / 5
Регистрация: 10.03.2009
Сообщений: 533
16.06.2009, 15:01 11
0
16.06.2009, 15:01
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.06.2009, 15:01

Проблема с отображением формы
Здравствуйте, У меня стоит Microsoft Visual C# E, и такая проблема: При...

Проблема с отображением базы
Здравствуйте. Возникла такая проблема: На сервере лежит база данных, открытая...

Проблема с отображением таблицы в IE
Приветствую форумчан! Я сделал таблицу для сайта и все вроде отлично, но в...


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

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

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