Как это расшифровывается? - Assembler

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

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

db 1Eh,60h, 0BAh, 0C4h, 3, 0B8h, 2, 4,0EFh, 0B8h, 4
        db 5, 0EFh, 0B2h, 0CEh,0B8h, 6, 0Ch, 0EFh, 0B8h, 4, 2
        db 0EFh, 0B8h, 5, 0, 0EFh, 0BAh, 0, 8, 0B8h, 0,0B8h, 8Eh
        db 0D8h, 0B9h, 0Eh, 0, 83h, 0C2h, 20h, 8Bh, 0F2h, 8Ah
        db 3Ch,56h, 46h, 0BFh,  0B0h, 0, 57h, 8Ah, 1Ch,2Eh, 88h
        db 1Dh,46h, 47h, 0E2h,  0F7h, 2Eh, 88h, 3Dh, 5Fh, 5Eh
        db 0B1h, 0Fh, 2Eh, 8Ah,1Dh, 88h, 1Ch, 46h, 47h, 0E2h
        db 0F7h, 81h, 0FAh, 40h, 0Bh, 75h, 0D1h, 0BAh, 0CEh, 3
        db 0B8h, 6, 0DEh, 0EFh,0B2h, 0C4h, 0B8h, 4, 3,0EFh, 0B8h
        db 2, 3, 0EFh, 0B2h, 0CEh, 0B8h, 4, 0, 0EFh, 0B8h, 5, 10h
        db 0EFh, 61h, 1Fh, 0EAh
            dw 13h          
            dw 666h         
        db 4Dh,53h, 41h, 57h, 63h, 6Fh, 72h, 70h, 2Eh,  28h, 43h
        db 29h,20h, 4Ah, 6Fh, 6Bh, 65h, 33h, 2Eh, 35h,  32h, 20h
        db 32h,35h, 2Fh, 34h, 2Fh, 39h, 34h, 0Dh, 0Ah,24h
Как понять,что тут зарезервировано?Часто встречаю в исходниках подобный вариант объявления данных.

Решение задачи: «Как это расшифровывается?»

textual
Листинг программы
org 100h
push  ds
pusha
mov   dx,003C4h
mov   ax,00402h
out   dx,ax
mov   ax,00504h
out   dx,ax
mov   dl,0CEh
mov   ax,00C06h
out   dx,ax
mov   ax,00204h
out   dx,ax
mov   ax,5
out   dx,ax
mov   dx,00800h
mov   ax,0B800h
mov   ds,ax
 
main:mov  cx,0000Eh
     add  dx,020h
     mov  si,dx
     mov  bh,[si]
     push si
     inc  si
     mov  di,000B0h
     push di
     @@:mov bl,[si]
        mov [cs:di],bl
        inc si
        inc di
     loop @b
     mov [cs:di],bh
     pop di
     pop si
     mov cl,00Fh
     @@:mov bl,[cs:di]
        mov [si],bl
        inc si
        inc di
     loop @b
     cmp dx,00B40h
jnz main
mov  dx,003CEh
mov  ax,0DE06h
out  dx,ax
mov  dl,0C4h
mov  ax,00304h
out  dx,ax
mov  ax,00302h
out  dx,ax
mov  dl,0CEh
mov  ax,4
out  dx,ax
mov  ax,01005h
out  dx,ax
popa
pop  ds
 
jmp  $ ;Просто сделал бесконечный цикл, чтобы окошко не закрывалось
;в оригинале было это
;jmpf        00666h:00013h ;<-прикол: число зверя и чёртова дюжина
 
db 'MSAWcorp.(C) Joke3.52 25/4/94',0Dh,0Ah,'$'

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


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

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

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