请教一下这段汇编代码的含义
											 程序代码:
程序代码:push    word ptr [bp+0]
call    sub_156
jnz     short loc_E2
cli
mov     al, 0D1h
out     64h, al         ; AT Keyboard controller 8042.
call    sub_156
mov     al, 0DFh
out     60h, al         ; AT Keyboard controller 8042.
call    sub_156
mov     al, 0FFh
out     64h, al  ; AT Keyboard controller 8042.
                 ; Reset the keyboard and start internal diagnostics
call    sub_156
sti
loc_E2:
       mov     ax, 0BB00h
int     1Ah
and     eax, eax
;以下省略
sub_156  proc near
       sub     cx, cx
    loc_158: 
       in      al, 64h     ; AT Keyboard controller 8042.
       jmp     short $+2
       and     al, 2
       loopne  loc_158
       and     al, 2
       retn
sub_156 endp跪求高手赐教!!

 
											





 
	    