📄 prime-b.asm
字号:
cmp dh,28h ; if seconds = 28h
jb loc_79 ; Jump if below
cmp dh,32h ; if seconds = 32h
jb loc_78 ; Jump if below
call write_31h_0f7h
call write_47h
jmp short loc_83
loc_78:
call write_31h_0ddh
call write_4fh
jmp short loc_83
loc_79:
call write_31h_0f7h
call write_47h
jmp short loc_83
loc_80:
call write_83h_0c7h_DL
jmp short loc_83
loc_81:
call write_0bfh_BL_0bfh
jmp short loc_83
loc_82:
call write_47h
call write_0ebh_0
loc_83:
mov di,102h
call get_time
cmp dh,0Ah ; if seconds = 0ah
jb loc_88 ;Jump if below
cmp dh,14h ; if seconds = 14h
jb loc_87 ; Jump if below
cmp dh,1Eh ; if seconds = 1eh
jb loc_86 ; Jump if below
cmp dh,28h ; if seconds = 28h
jb loc_85 ; Jump if below
cmp dh,32h ; if seconds = 32h
jb loc_84 ; Jump if below
call write_31h_0c7h
call write_31h_0cfh
jmp short loc_89
loc_84:
call write_31h_0ddh
call write_45h
call write_4fh
jmp short loc_89
loc_85:
call write_31h_0f7h
call write_31h_0edh
jmp short loc_89
loc_86:
call write_8dh_3eh_BL_BH
jmp short loc_89
loc_87:
call write_83h_0c7h_DL
call write_47h
jmp short loc_89
loc_88:
call write_0ebh_0
call write_31h_0ffh
loc_89:
mov di,109h
call get_time
cmp dh,0Ah ; if seconds = 0ah
jb loc_94 ;Jump if below
cmp dh,14h ; if seconds = 14h
jb loc_93 ; Jump if below
cmp dh,1Eh ; if seconds = 1eh
jb loc_92 ; Jump if below
cmp dh,28h ; if seconds = 28h
jb loc_91 ; Jump if below
cmp dh,32h ; if seconds = 32h
jb loc_90 ; Jump if below
call write_0ebh_0
call write_47h
jmp short loc_ret_95
loc_90:
call write_0ebh_0
call write_4fh
jmp short loc_ret_95
loc_91:
call write_47h
call write_47h
call write_45h
jmp short loc_ret_95
loc_92:
call write_83h_0c7h_DL
jmp short loc_ret_95
loc_93:
call write_47h
call write_31h_0ffh
jmp short loc_ret_95
loc_94:
call write_0ebh_0
call write_47h
loc_ret_95:
retn
crypt endp
get_time proc near
mov ah,2Ch ; get system time
int 21h
retn
get_time endp
write_31h_0c5h proc near
mov al,31h
stosb ; Store al to es:[di]
mov al,0C5h
stosb ; Store al to es:[di]
retn
write_31h_0c5h endp
write_31h_0ddh proc near
mov al,31h
stosb ; Store al to es:[di]
mov al,0DDh
stosb ; Store al to es:[di]
retn
write_31h_0ddh endp
mov al,31h
stosb ; Store al to es:[di]
mov al,0CDh
stosb ; Store al to es:[di]
retn
write_31h_0d5h proc near
mov al,31h ; '1'
stosb ; Store al to es:[di]
mov al,0D5h
stosb ; Store al to es:[di]
retn
write_31h_0d5h endp
write_31h_0f5h proc near
mov al,31h ; '1'
stosb ; Store al to es:[di]
mov al,0F5h
stosb ; Store al to es:[di]
retn
write_31h_0f5h endp
mov al,31h ; '1'
stosb ; Store al to es:[di]
mov al,0FDh
stosb ; Store al to es:[di]
retn
write_31h_0edh proc near
mov al,31h ; '1'
stosb ; Store al to es:[di]
mov al,0EDh
stosb ; Store al to es:[di]
retn
write_31h_0edh endp
write_31h_0c7h proc near
mov al,31h ; '1'
stosb ; Store al to es:[di]
mov al,0C7h
stosb ; Store al to es:[di]
retn
write_31h_0c7h endp
write_31h_0dfh proc near
mov al,31h ; '1'
stosb ; Store al to es:[di]
mov al,0DFh
stosb ; Store al to es:[di]
retn
write_31h_0dfh endp
write_31h_0cfh proc near
mov al,31h ; '1'
stosb ; Store al to es:[di]
mov al,0CFh
stosb ; Store al to es:[di]
retn
write_31h_0cfh endp
write_31h_0d7h proc near
mov al,31h ; '1'
stosb ; Store al to es:[di]
mov al,0D7h
stosb ; Store al to es:[di]
retn
write_31h_0d7h endp
mov al,31h ; '1'
stosb ; Store al to es:[di]
mov al,0EFh
stosb ; Store al to es:[di]
retn
write_31h_0f7h proc near
mov al,31h
stosb ; tore al to es:[di]
mov al,0F7h
stosb ; tore al to es:[di]
retn
write_31h_0f7h endp
write_31h_0ffh proc near
mov al,31h
stosb ; tore al to es:[di]
mov al,0FFh
stosb ; tore al to es:[di]
retn
write_31h_0ffh endp
write_45h proc near
mov al,45h ; 'E'
stosb ; Store al to es:[di]
retn
write_45h endp
write_4dh proc near
mov al,4Dh ; 'M'
stosb ; Store al to es:[di]
retn
write_4dh endp
write_47h proc near
mov al,47h ; 'G'
stosb ; Store al to es:[di]
retn
write_47h endp
write_4fh proc near
mov al,4Fh ; 'O'
stosb ; Store al to es:[di]
retn
write_4fh endp
write_0bfh_BL_0bfh proc near
mov al,0BFh
stosb ; Store al to es:[di]
mov al,bl
stosb ; Store al to es:[di]
mov al,al
stosb ; Store al to es:[di]
retn
write_0bfh_BL_0bfh endp
write_8dh_3eh_BL_BH proc near
mov al,8Dh
stosb ; Store al to es:[di]
mov al,3Eh ; '>'
stosb ; Store al to es:[di]
mov al,bl
stosb ; Store al to es:[di]
mov al,bh
stosb ; Store al to es:[di]
retn
write_8dh_3eh_BL_BH endp
write_83h_0c7h_DL proc near
mov al,83h
stosb ; Store al to es:[di]
mov al,0C7h
stosb ; Store al to es:[di]
mov al,dl
stosb ; Store al to es:[di]
retn
write_83h_0c7h_DL endp
write_0ebh_0 proc near
mov al,0EBh
stosb ; Store al to es:[di]
mov al,0
stosb ; Store al to es:[di]
retn
write_0ebh_0 endp
write_9h_0ffh proc near
mov al,9
stosb ; Store al to es:[di]
mov al,0FFh
stosb ; Store al to es:[di]
retn
write_9h_0ffh endp
write_9h_0efh proc near
mov al,9
stosb ; Store al to es:[di]
mov al,0EFh
stosb ; Store al to es:[di]
retn
write_9h_0efh endp
write_21h_0efh proc near
mov al,21h ; '!'
stosb ; Store al to es:[di]
mov al,0EFh
stosb ; Store al to es:[di]
retn
write_21h_0efh endp
write_81h_0efh proc near
mov al,81h
stosb ; Store al to es:[di]
mov al,0EFh
stosb ; Store al to es:[di]
retn
write_81h_0efh endp
mov al,29h ; ')'
stosb ; Store al to es:[di]
mov al,0C7h
stosb ; Store al to es:[di]
retn
write_29h_0cfh proc near
mov al,29h ; ')'
stosb ; Store al to es:[di]
mov al,0CFh
stosb ; Store al to es:[di]
retn
write_29h_0cfh endp
mov al,29h ; ')'
stosb ; Store al to es:[di]
mov al,0D7h
stosb ; Store al to es:[di]
retn
write_29h_0f7h proc near
mov al,29h ; ')'
stosb ; Store al to es:[di]
mov al,0F7h
stosb ; Store al to es:[di]
retn
write_29h_0f7h endp
write_29h_0efh proc near
mov al,29h ; ')'
stosb ; Store al to es:[di]
mov al,0EFh
stosb ; Store al to es:[di]
retn
write_29h_0efh endp
vend equ $
seg_a ends
end start
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -