Завершить через 45 секунд работу компьютера (с обратным отсчетом времени до завершения) - Assembler

Узнай цену своей работы

Формулировка задачи:

Составить консольною программу ,завершающую через 45 секунд работу компьютера и выводящую в консоль время оставшееся до завершения. Кто может подсказать?
Подсказать как это сделать

Решение задачи: «Завершить через 45 секунд работу компьютера (с обратным отсчетом времени до завершения)»

textual
Листинг программы
;Code Offset = 00000000, Code Size = 000001C3
;Data Offset = 00000000, Data Size = 00000000
 
;+++++++++++++++++++ ASSEMBLY CODE LISTING ++++++++++++++++++
;//*************** Start of Code in Segment: 1 **************
 
:0001.0100 B80A16                 mov  ax, 160A
:0001.0103 CD2F                   int  2F
:0001.0105 3D0000                 cmp  ax, 0000
:0001.0108 750A                   jne  0114
 
;* Possible StringData ->"This program cannot be run under Windows."
                                  |
:0001.010A BA1701                 mov  dx, 0117
:0001.010D B409                   mov  ah, 09
:0001.010F CD21                   int  21
:0001.0111 E94A01                 jmp  025E
 
;* Possible StringData ->"ShutDown v1.2 "
                                  |
:0001.01ED B409                   mov  ah, 09
:0001.01EF BA4301                 mov  dx, 0143
:0001.01F2 CD21                   int  21
:0001.01F4 803E81000D             cmp  byte ptr [0081], 0D
:0001.01F9 7418                   je   0213
:0001.01FB BE8100                 mov  si, 0081
:0001.01FE AC                     lodsb
 
:0001.01FF 3C0D                   cmp  al, 0D
:0001.0201 74E0                   je   01E3
:0001.0203 24DF                   and  al, DF
:0001.0205 3A06DF01               cmp  al, [01DF]
:0001.0209 744E                   je   0259
:0001.020B 3A06E001               cmp  al, [01E0]
:0001.020F 743D                   je   024E
:0001.0211 EBEB                   jmp  01FE
 
;* Possible StringData ->"S(hutdown), R(estart), or C(ancel)? "
                                  |
:0001.0213 B409                   mov  ah, 09
:0001.0215 BA9601                 mov  dx, 0196
:0001.0218 CD21                   int  21
:0001.021A 30E4                   xor  ah, ah
:0001.021C CD16                   int  16
 
:0001.021E 3A06E201               cmp  al, [01E2]
:0001.0222 7437                   je   025B
:0001.0224 24DF                   and  al, DF
:0001.0226 3A06DF01               cmp  al, [01DF]
:0001.022A 742A                   je   0256
:0001.022C 3A06E001               cmp  al, [01E0]
:0001.0230 7419                   je   024B
:0001.0232 3A06E101               cmp  al, [01E1]
:0001.0236 7423                   je   025B
:0001.0238 EBE0                   jmp  021A
 
:0001.023A B402                   mov  ah, 02
:0001.023C 88C2                   mov  dl, al 
:0001.023E CD21                   int  21
:0001.0240 B409                   mov  ah, 09
:0001.0242 BA4802                 mov  dx, 0248
:0001.0245 CD21                   int  21
:0001.0247 C3                     ret
 
:0001.0256 E8E1FF                 call 023A
:0001.0259 EB08                   jmp  0263
:0001.025B E8DCFF                 call 023A
:0001.025E B8004C                 mov  ax, 4C00
:0001.0261 CD21                   int  21
;-----------------------------------------------------------------------
:0001.0266 B80153                 mov  ax, 5301
:0001.0269 31DB                   xor  bx, bx
:0001.026B CD15                   int  15
 
:0001.026D B80E53                 mov  ax, 530E
:0001.0270 B90201                 mov  cx, 0102
:0001.0273 CD15                   int  15
 
:0001.0275 B80753                 mov  ax, 5307
:0001.0278 B301                   mov  bl, 01
:0001.027A B90300                 mov  cx, 0003
:0001.027D CD15                   int  15
;-----------------------------------------------------------------------
;* Possible StringData ->"Could not"
:0001.027F B409                   mov  ah, 09
:0001.0281 BABB01                 mov  dx, 01BB
:0001.0284 CD21                   int  21
:0001.0286 EBD6                   jmp  025E

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

9   голосов , оценка 4.111 из 5
Похожие ответы