Форум программистов, компьютерный форум, киберфорум
Assembler для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/7: Рейтинг темы: голосов - 7, средняя оценка - 5.00
41 / 40 / 23
Регистрация: 10.03.2012
Сообщений: 374
1

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

15.12.2013, 01:32. Показов 1362. Ответов 8
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте! Каким образом можно вывести время на экран при загрузке ОС? Этот вариант не пойму почему не выводит:
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
.MODEL  TINY
.CODE
ORG 7c00h
 
Main:
   mov   ax, 2
   int   10h
   mov ah,0;организация 5 секундой задержки 
   int 1Ah
   mov bx,dx
   add bx,91 ; в одной секунде 18,2 тика 5сек*18,2=91
a1: 
   int 1Ah
   cmp bx,dx
   jne a1
   mov ah,2;получаю текущее время
   int 1Ah
   mov ah,0
   mov al,ch;час в формате BCD
   ror ax, 1
   ror ax, 1
   ror ax, 1
   ror ax, 1
   shr ah, 1
   shr ah, 1
   shr ah, 1
   shr ah, 1
   or ax,'00'
   mov word ptr string,ax
   mov ah,0
   mov al,cl;минуты в формате BCD
   ror ax, 1
   ror ax, 1
   ror ax, 1
   ror ax, 1
   shr ah, 1
   shr ah, 1
   shr ah, 1
   shr ah, 1
   or ax,'00'
   mov word ptr string+3,ax
   mov ah,0
   mov al,dh;секунды в формате BCD
   ror ax, 1
   ror ax, 1
   ror ax, 1
   ror ax, 1
   shr ah, 1
   shr ah, 1
   shr ah, 1
   shr ah, 1
   or ax,'00'
   mov word ptr string+6,ax
   mov   ax, 1300h
   mov   cx, len
   mov   bx, 0Fh
   mov   dx, 101h
   mov   bp, offset string
   int   10h
   mov   ah, 0
   int   16h
   jmp   Main
 
exit:
 
string db ?,?,':',?,?,':',?,?,0Dh,'$'
len    equ  $ - string
END Main
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
15.12.2013, 01:32
Ответы с готовыми решениями:

Вывод системного времени на экран
Доброго временисуток! Помогите пожалуйста написать следующую программку: По нажатию на V вывести...

Вывод системного времени на экран по нажатию F3
Здравствуйте, необходимо создать программу, которая при нажатии на клавишу F3 будет выводить время...

Вывод системного времени
Программа выводит на экран время , но делает это два раза, в чем проблема -без понятия . Буду...

Ежесекундный вывод системного времени
Всем привет! Пишу программу, которая ежесекундно должна выводить текущее системное время, в формате...

8
650 / 337 / 37
Регистрация: 04.04.2012
Сообщений: 886
15.12.2013, 19:48 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
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
.model tiny
.code
org 100h
Main:
jmp m
org 7C00h
m:
   mov   ax, 2
   int   10h
   mov ah,0;организация 5 секундой задержки 
   int 1Ah
   mov bx,dx
   add bx,91 ; в одной секунде 18,2 тика 5сек*18,2=91
a1: 
   int 1Ah
   cmp bx,dx
   jne a1
   mov ah,2;получаю текущее время
   int 1Ah
   mov ah,0
   mov al,ch;час в формате BCD
   ror ax, 1
   ror ax, 1
   ror ax, 1
   ror ax, 1
   shr ah, 1
   shr ah, 1
   shr ah, 1
   shr ah, 1
   or ax,'00'
   mov word ptr string,ax
   mov ah,0
   mov al,cl;минуты в формате BCD
   ror ax, 1
   ror ax, 1
   ror ax, 1
   ror ax, 1
   shr ah, 1
   shr ah, 1
   shr ah, 1
   shr ah, 1
   or ax,'00'
   mov word ptr string+3,ax
   mov ah,0
   mov al,dh;секунды в формате BCD
   ror ax, 1
   ror ax, 1
   ror ax, 1
   ror ax, 1
   shr ah, 1
   shr ah, 1
   shr ah, 1
   shr ah, 1
   or ax,'00'
   mov word ptr string+6,ax
   mov   ax, 1300h
   mov   cx, len
   mov   bx, 0Fh
   mov   dx, 101h
   mov   bp, offset string
   int   10h
   mov   ah, 0
   int   16h
;   jmp   Main
    jmp m
 
exit:
 
string db ?,?,':',?,?,':',?,?
len    equ  $ - string
END Main
Будут вопросы, спрашивайте.
1
41 / 40 / 23
Регистрация: 10.03.2012
Сообщений: 374
15.12.2013, 20:35  [ТС] 3
AFP, а как изменить программу, чтобы время вывелось один раз и больше не обновлялось? При удалении строки
Assembler
1
jmp m
время не выводится ни разу
0
650 / 337 / 37
Регистрация: 04.04.2012
Сообщений: 886
15.12.2013, 20:58 4
Программа записывается в BOOT/MBR сектор?
Не понял: При удалении строки
0
41 / 40 / 23
Регистрация: 10.03.2012
Сообщений: 374
15.12.2013, 21:01  [ТС] 5
AFP, да, программа записывается в бут-сектор. По поводу строки: я думал, если убрать цикл, время перестанет выводиться снова и снова
0
650 / 337 / 37
Регистрация: 04.04.2012
Сообщений: 886
15.12.2013, 21:06 6
RocBoy-D,
убрать цикл, а что дальше?
Все зависнет, дальше вашего кода нет.
0
41 / 40 / 23
Регистрация: 10.03.2012
Сообщений: 374
15.12.2013, 21:08  [ТС] 7
AFP, так я это и хотел. Время должно выводиться на экран один раз и остаться на нем в качестве строки символов (далее не обновляется)
0
650 / 337 / 37
Регистрация: 04.04.2012
Сообщений: 886
15.12.2013, 21:33 8
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
.model tiny
.code
org 100h
Main:
jmp m
org 7C00h
m:
   mov   ax, 2
   int   10h
   mov ah,0;организация 5 секундой задержки 
   int 1Ah
   mov bx,dx
   add bx,91 ; в одной секунде 18,2 тика 5сек*18,2=91
a1: 
   int 1Ah
   cmp bx,dx
   jne a1
   mov ah,2;получаю текущее время
   int 1Ah
   mov ah,0
   mov al,ch;час в формате BCD
   ror ax, 1
   ror ax, 1
   ror ax, 1
   ror ax, 1
   shr ah, 1
   shr ah, 1
   shr ah, 1
   shr ah, 1
   or ax,'00'
   mov word ptr string,ax
   mov ah,0
   mov al,cl;минуты в формате BCD
   ror ax, 1
   ror ax, 1
   ror ax, 1
   ror ax, 1
   shr ah, 1
   shr ah, 1
   shr ah, 1
   shr ah, 1
   or ax,'00'
   mov word ptr string+3,ax
   mov ah,0
   mov al,dh;секунды в формате BCD
   ror ax, 1
   ror ax, 1
   ror ax, 1
   ror ax, 1
   shr ah, 1
   shr ah, 1
   shr ah, 1
   shr ah, 1
   or ax,'00'
   mov word ptr string+6,ax
   mov   ax, 1300h
   mov   cx, len
   mov   bx, 0Fh
   mov   dx, 101h
   mov   bp, offset string
   int   10h
m1:
   jmp m1 
string db ?,?,':',?,?,':',?,?
len    equ  $ - string
END Main
Или чтобы время тикало?

Добавлено через 12 минут
Из других тем понял, что ван надо.
Удалите
Assembler
1
2
m1:
   jmp m1
из моего последнего поста.
1
Ушел с форума
Автор FAQ
16281 / 7605 / 1066
Регистрация: 11.11.2010
Сообщений: 13,618
16.12.2013, 04:27 9
RocBoy-D,
а для чего такая порнография?
Assembler
1
2
3
4
5
6
7
8
   ror ax, 1
   ror ax, 1
   ror ax, 1
   ror ax, 1
   shr ah, 1
   shr ah, 1
   shr ah, 1
   shr ah, 1
достаточно первой строкой написать
Assembler
1
.286
и уложиться в две команды
Assembler
1
2
   ror ax,4
   shr ah, 4
1
16.12.2013, 04:27
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.12.2013, 04:27
Помогаю со студенческими работами здесь

Вывод системного времени большими цифрами
Здравствуйте! Столкнулся с проблемой - не знаю как вывести на экран значения регистров большими...

Использование системного сервиса.Ввод данных с клавиатуры.Вывод на экран
Я пропустил эту тему и теперь не знаю,как сделать это задание. Создать числовой массив в...

Вывод системного времени на экран
Два дня искала на форуме программы, увы все тщетно. Не запускается ничего на emu8086 из-за не...

Вывод системного времени на экран
Нужно создать клас в котором будет информация про системное время.Также нужно создать метод который...


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

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