Форум программистов, компьютерный форум, киберфорум
Наши страницы
Assembler, MASM, TASM
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/3: Рейтинг темы: голосов - 3, средняя оценка - 5.00
Romanin
1 / 1 / 2
Регистрация: 05.05.2010
Сообщений: 27
1

Ошибка в коде вывода символа на экран!

10.04.2012, 13:31. Просмотров 603. Ответов 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
; вывод на экран строки символа из буфера
; Сегмент данных
dseg    segment
str1    db  'Введите первое число!', "$"
dseg    ends
;
; Сегмент стека
sseg    segment ; сегмент стека
db      32      dup (?)
bot equ $ ; бот указывает на дно стека
sseg    ends
;
; Сегмент команд
cseg    segment
assume  cs: cseg, ds: dseg, ss: sseg ; определение всех наших сегментов
begin   proc    far
;Настройка сегмента стека
mov     ax, sseg
mov     ss, ax ; в регистре ss записывается сегментный адрес сегмента стека.
lea     sp, bot ; В регистре sp указывается дно стека
; Сохранение в стеке адреса выхода из программы
push    ds
sub     ax,ax ; ax=0 команда сложения
push    ax
; Настройка сегмента данных
mov     ax, dseg
mov     ds, ax ; в регистре ds записывается сегментный адрес сегммента данных
; Вывод заданного текста
mov     ax, 9h
lea     ax, str1
int     21h ; спомощью прерывания int 21h и ее внутренней функции 9h віводится на экран непосредственно строка стр1 на которую указывает команда указатель леа
; Выход из программы
ret ; корректный выход из программы с сохранением всех данных
begin   endp
cseg    ends
end     begin


Ошибка, которую выдает:
0
Миниатюры
Ошибка в коде вывода символа на экран!  
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.04.2012, 13:31
Ответы с готовыми решениями:

Программа для ввода-вывода символа (ПС286 по COM-порту)
Добрый день!Хотелось бы получить советы или рекомендации по давно мучающему...

Подсчитать количество единиц в коде символа
помогите решить 1) Логические операции. Процедуры. Способы передачи...

Вывод ASCII символа на экран
Ни давно начал изучать asm по книге калашникова. Ни могу скомпилить один...

Вывод на экран последнего символа n в строке
вывод на экран последнего символа n в строке

Вывод символа на экран в виде процедуры
Задана последовательность из шести слов 0f501h, 03196h, 05737h, 0aa88h, 0cedh,...

2
Mikl___
Автор FAQ
11898 / 6186 / 574
Регистрация: 11.11.2010
Сообщений: 11,197
10.04.2012, 13:48 2
Romanin, судя по картинке ошибок нет, а warning - это предупреждение. судя по тексту - код, данные и стек в разных сегментах - это экзе-файл, корректный выход из него mov ah,4Ch/int 21h выход из программы через RET используют в КОМ-программах
ошибки найди сам!
; tasm dos exe #
; вывод на экран строки символа из буфера
.286
.model small
.data
str1 db 'Введите первое число!', "$"
.code; Сегмент команд
begin: mov ax,@data
mov ds,ax ; в регистре ds записывается сегментный адрес сегммента данных
; Вывод заданного текста
mov ah,9h
lea dx,str1
int 21h
mov ah,0;ждем пока не нажмут на клавиатуру
int 16h
mov ah,4Ch;выходим из программы
int 21h
end begin
1
Romanin
1 / 1 / 2
Регистрация: 05.05.2010
Сообщений: 27
10.04.2012, 22:03  [ТС] 3
Подправил как ты сказал! Все заработало!!
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.04.2012, 22:03

Программа вывода имени на экран
Нужно написать программу, которая по нажатию Enter выведет на экран набранное...

Вывод введенного пользователем с клавиатуры символа на экран
Добрый день. Нуждаюсь в помощи\совете, есть такая задача: Написать...

Вывод символа на экран c номером больше нуля
Здравствуйте. Подскажите, пожалуйста, можно ли функцией 0Eh прерывания 10h...


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

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

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