Форум программистов, компьютерный форум, киберфорум
Assembler для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/8: Рейтинг темы: голосов - 8, средняя оценка - 4.50
-20 / 1 / 0
Регистрация: 12.10.2016
Сообщений: 21
TASM

Не могу вывести значение в консоль

20.12.2016, 12:04. Показов 1751. Ответов 13
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Привет, коллеги. У меня есть код на tasm:
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
.8086
.model small
.stack 100h
 
.data
    mass db 1,4,5,3,6       
    summ    dw 0            
    s  db 'Значение = $'
    medium db 0             
    modd db 0               
    
.code 
proc_1 proc                 
    mov cx, 5               
    lea si, [mass]          
    mov al, byte ptr[mass]  
 
l1:    
    mov bl,[si+1]           
    add ax, bx              
    inc si                  
    loop l1                 
    
mov summ, ax                
mov dl, 5                   
div dl                      
add medium, al              
add modd, ah                
ret 12                      
proc_1 endp                 
 
start:
    mov ax, @data           
    mov ds, ax              
    xor ax, ax              
    xor bx, bx              
    call proc_1             
 
    ;вывод на экран
    xor ax,ax
    xor dl,dl
    mov al,medium
    aam 
    add ax, 3030h 
    mov dl, ah 
    mov dh, al 
    mov ah,02 
    int 21h 
    mov dl, dh 
    int 21h
 
exit:
    mov ax, 4C00h
    int     21h 
    
end start
Не получается вывести значение среднего арифметического чисел (medium) в консоль. Подскажите, плиз...
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
20.12.2016, 12:04
Ответы с готовыми решениями:

Не могу вывести программу в консоль С++
Работаю в версии 2010 Express, код делался в 2012 версии, как подкоректировать код, чтобы можно было запускать с 2010?? Помогите...

Не могу вывести текст с файла в консоль
Программа выводит только первое слово текста, помогите. #include <iostream> #include <fstream> #include <string> using...

Не могу найти как вывести массив на консоль
Доброго времени суток. Не могу найти как вывести массив на консоль. class Program { public static void Main() {...

13
1719 / 568 / 187
Регистрация: 12.03.2016
Сообщений: 2,169
20.12.2016, 13:22
А что это в 29 строке?
0
-20 / 1 / 0
Регистрация: 12.10.2016
Сообщений: 21
20.12.2016, 13:30  [ТС]
Ну если что-то не так, то подскажите, плиз, что выкинуть или добавить?
0
1719 / 568 / 187
Регистрация: 12.03.2016
Сообщений: 2,169
20.12.2016, 13:35
Да у меня и так все компилируется и выводится 03 как положено без всяких исправлений.
0
-20 / 1 / 0
Регистрация: 12.10.2016
Сообщений: 21
20.12.2016, 13:37  [ТС]
Странно. А как вывести именно 3.8 - просто это и будет ответ.
И еще: я компилирую так:

tasm 12.asm
tlink 12.obj

И ответа в консоли нет.

Я использую DOSBox 0.74
0
1719 / 568 / 187
Регистрация: 12.03.2016
Сообщений: 2,169
20.12.2016, 13:42
Экзешник получается?
0
-20 / 1 / 0
Регистрация: 12.10.2016
Сообщений: 21
20.12.2016, 13:45  [ТС]
Блин - да, точно! Вот только выводит не то, что надо оказывается. Мне надо среднее арифметическое чисел 1,4,5,3,6 , а это будет 3.8. Как это сделать??? Из регистра ax брать? Или из ax: al ah (у меня это еще в переменных medium и modd)?
0
1719 / 568 / 187
Регистрация: 12.03.2016
Сообщений: 2,169
20.12.2016, 13:46
Цитата Сообщение от Dmitry_Math Посмотреть сообщение
Я использую DOSBox 0.74
Я тоже, откопал Tasm, там все скомпилировалось и 03 выдало как положено.
0
-20 / 1 / 0
Регистрация: 12.10.2016
Сообщений: 21
20.12.2016, 13:47  [ТС]
Так а надо 3.8 оказывается
0
1719 / 568 / 187
Регистрация: 12.03.2016
Сообщений: 2,169
20.12.2016, 14:19
После вывода 03 выведи точку, а затем 8 используя mod (как с medium) если так уж по простому.

Добавлено через 27 минут
остаток умножишь на 10, разделишь на 5 получишь десятичное 8.
0
-20 / 1 / 0
Регистрация: 12.10.2016
Сообщений: 21
20.12.2016, 14:20  [ТС]
Ок - спасибо)))
0
1719 / 568 / 187
Регистрация: 12.03.2016
Сообщений: 2,169
20.12.2016, 17:22
Dmitry_Math, если совсем уж тяжко будет
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
.model small
.386
.stack 100h
 
.data
    mass    dw  1,4,5,3,6       
    len     dw  $ - mass            
.code                 
                  
start:  
    mov ax,@data           
    mov ds, ax     
 
    mov cx,len
    shr cx,1
    xor     ax,ax
 
    lea bx,mass
    go:         
    add ax,[bx]
    add bx,2
    loop go 
    
    mov bl,5
    div bl
    mov dh,ah
 
    call chislo
    mov al,'.'
    int 29h
    xor ax,ax
    mov al,dh
    mov dx,10
    mul dx
    div bl
    call chislo
    
    mov ax, 4C00h
    int 21h 
 
chislo proc
    add al,'0'
    int 29h
    ret
chislo endp
 
 
    
end start
0
-20 / 1 / 0
Регистрация: 12.10.2016
Сообщений: 21
20.12.2016, 17:23  [ТС]
Мановар - ты супер))))) Ну спасибо!!!
0
1719 / 568 / 187
Регистрация: 12.03.2016
Сообщений: 2,169
20.12.2016, 19:25
Можно и по лучше (а там уж в зависимости от задания)
Assembler
1
2
3
4
5
6
lea si,mass
    go:         
    lodsw
    add bx,ax
    loop go
    mov ax,bx
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
20.12.2016, 19:25
Помогаю со студенческими работами здесь

Не могу вывести переменную типа int в консоль
Не могу вывести интовую переменную в консоль ( консоль не та которая от Visual , а которая от SFML) Пытался вывести так : ...

Ввести и вывести значение на консоль
Всем Привет! Не сильно знаю Assembler. не могу вывести на консоль значение, получается всякие символы ток. Помогите пожалуйста....

Вывести значение выражения на консоль
c=(a+b)*(a-23*z)

Получение значение из ползунка и вывести в консоль
Здравствуйте дорогие форумчане. Нужна помощь, из ползунка никак не удается получить value. Пожалуйста знатоки помогите справится с этой...

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


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

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Новые блоги и статьи
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru