һ - רҵ·ĵϷƽ̨

微机原理和接口技?第四?课后习题答案解析培训讲学 - 百度文库

Դû ʱ䣺2025/5/15 9:03:25 loading ƪĵֻ
˵ݽԤݿܲȫҪĵҪݣwordʹáword΢ź:xxxxxxxQQxxxxxx ܸṩĵл֧½⡣

ͨʱݵijһλݵżУλаУλڵġ1ĸΪУ飻ΪżżУ顣

޷зIJӰ鲻ͬı־״̬λж޷зĴСϵҪòͬı־λϣжӦָ

˫֧ṹ֧֮JMPָʵֽǰһ֧صͬijá ӳעͿɷԱøӳӳעͰӳӳܡڲͳڲע˵ȡ

ӳ򱣳ֶջƽ⣬ִܱ֤RETָʱǰջȷķصַҲҪֶջƽ⣬ͷŴݲռõĶջռ䣬εøӳܾʹջ

ֵǴݲһóıӰó򣻡ַʱó޸ַͨõıݡ

INCLUDEıļԴļһ֣INCLUDELIBӳļ

ȡ̡

WindowsʱҪ׵Ķ̬ӿDLLļûбʱͻʾڡ

ϰ4.3

1JMPָĿַתƷΧѰַʽԷֳͣתơ__________תơ__________Ͷμתơ__________μתơ__________

2ƽչ洢ģ£EBX1256H˫ֱTABLEƫƵַ20A1HԵַ32F7H3280HִָJMP EBX EIP__________ִָJMP TABLE[EBX]EIP__________

3CMP EAX,3721Hָ֮JZָתƵEAX__________ʱZF__________

4СдĸeӢĵгƵߵĸijӢĵ4-11򷽷м򵥼ܣͳƷֽݡ8FH࣬жϸóõֽ__________

5ѭṹһɣ__________ѭ__________֡

64-14еRETָPOP EBPָJMP EBPָ滻ʱEBP__________

7̶忪ʼǡTEST PROC䣬̶__________궨忪ʼǡDISP MACRO䣬궨__________

8öջӳķǹ̶ģѰַջݵļĴ__________ 9MASMУһõıӦʹ__________αָʹⲿҪʹ__________αָ

10ReadConsoleʱûڼϰ8Ȼس̻__________

ѰַѰֱַѰַѰַ 1256H3280H 3721H1 EAH

ѭʼѭ REPT1ŵĵַ TEST ENDPENDM EBP

PUBLICEXTERN 38H 0DH 0AH ϰ4.6

ִ³ƬϺCMPֱָʹ5״̬־CFZFSFOFPFΪ0Ϊ1ʹЩתָָJccתƣ mov eax,20h

cmp eax,80h

CF1 ZF0 SF1 OF0 PF1

ʹתƵָУJC JS JP JNZ JNO ϰ4.9

ָCDQEAXչEDXEAXΪ0EDX0EAXΪ1EDXFFFFFFFFHʵָָܡ 1 test eax,8000h jz next1 mov edx,0ffffffffh jmp done next1: mov dx,0 done:

2

ʹλָá rol eax,1 rcr edx,1 sar edx,31 ror eax,1

ϰ4.11дһʾ֡Input Number09Ȼһʾ֣Ǽ09֣ʾError!ȴ֡ ; ݶ inmsg byte 'Input number(0~9): ',0 ermsg byte 0dh,0ah,'Error! Input again: ',0 ; mov eax,offset inmsg ; ʾ call dispmsg again: call readc ; ȴ cmp al,'0' ; < 0 jb erdisp cmp al,'9' ; > 9 ja erdisp call dispcrlf call dispc jmp done

erdisp: mov eax,offset ermsg call dispmsg jmp again done:

ϰ4.12һ׵ַΪARRAY20˫ֵ飬˵гεĹܡ

sumlp:

mov ecx,20 mov eax,0 mov esi,eax

add eax,array[esi]

; λ

; λΪ0ZF1תƵNEXT1

; λΪ1˳ִУEDXFFFFFFFFH ; תƣһ֧

; λΪ0תƵִУEDX0

add esi,4 loop sumlp mov total,eax

20˫ֵĺͣTOTALؽĽλ

ϰ4.22дһӳԶʽʾEAX32λݣһ֤ ; Σ mov eax,8F98FF00H call dispbd ; Σӳ dispbd proc push ecx push edx mov ecx,32 dbd: rol eax,1 push eax and al,01h add al,30h call dispc pop eax loop dbd pop edx pop ecx ret dispbd endp ϰ4.26

3ӳһ32λ8λʮʽĻʾֱ3ֲݷ3֤

1EAXĴ32λ 2temp32λ 3öջ32λ

1 ; ݶ wvar word 307281AFH ; Σ mov eax,wvar call disp mov al,'H' call dispc ; Σӳ disp proc push ebx push ecx mov ecx,8 ; 8λ dhw1: rol eax,4 mov ebx,eax and al,0fh ; תΪASCII

; ӳ

; 32λ

; Ҫַ

; ALѭһλ ; ȡALλ

; תӦASCLLֵ ; ԶƵʽʾ

add al,30h cmp al,'9' jbe dhw2 add al,7 dhw2: call dispc mov eax,ebx loop dhw1 pop ecx pop ebx ret disp endp

2 ; ݶ wvar word 307281AFH temp word ? ; Σ mov eax,wvar mov temp,eax call disp mov al,'H' call dispc ; Σӳdisp proc push ebx push ecx mov ecx,8 mov eax,temp dhw1: rol eax,4 mov ebx,eax and al,0fh add al,30h cmp al,'9' jbe dhw2 add al,7 dhw2: call dispc ; mov eax,ebx loop dhw1 pop ecx pop ebx ret disp endp

3 ; ݶ wvar word 307281AFH ; Σ push wvar call disp add esp,4 mov al,'H'

; 8λ ; תΪASCIIʾһַ

微机原理和接口技?第四?课后习题答案解析培训讲学 - 百度文库.doc ĵWordĵصԣ㸴ơ༭ղغʹӡ
Ƽ
Copyright © 2012-2023 һ Ȩ | ϵ
:վز֪ʶȨݡϢ紫ȨתصƷַȨ,һ֪ͨǣǻἰʱɾ
ͷQQxxxxxx 䣺xxxxxx@qq.com
ICP2023013149
Top