.686
.model flat,stdcall
option casemap :none
;###############################
include\masm32\include\windows.inc
include\masm32\include\kernel32.inc
includelib\masm32\lib\kernel32.lib
;##############################
;数据段
;#############################
.data
_insize dword 1
_a db ?
_b db ?
_c db ?
_cont db 0
_out db '请输入三角形的三条边,按回车完成输入:'
_Y db 'Y'
_N db 'N'
_size dword 80
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
;代码段
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
.code
start:
while 1
call triangle
inc _cont
.break .if _cont == 9
.endw
invoke ExitProcess,0
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
;
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
triangle proc
push edx
push ecx
push ebx
push eax
mov ebx,eax
invoke GetStdHandle,STD_OUTPUT_HANDLE
invoke WriteConsole,eax,offset _out,sizeof _out,offset _size,0
invoke GetStdHandle,STD_INPUT_HANDLE
invoke ReadConsole,eax,offset _a,sizeof _a,offset _insize,0
invoke ReadConsole,eax,offset _b,sizeof _b,offset _insize,0
invoke ReadConsole,eax,offset _c,sizeof _c,offset _insize,0
mov eax,ebx
mov al,_a
mov bl,_b
mov cl,_c
;-------------------------------
mov dl,al
add dl,bl
cmp dl,cl
jle NNN
;-------------------------------
mov dl,al
add dl,cl
cmp dl,bl
jle NNN
;-------------------------------
mov dl,bl
add dl,cl
cmp dl,al
jle NNN
;-------------------------------
invoke WriteConsole,eax,offset _Y,sizeof _Y,offset _size,0
NNN:
invoke WriteConsole,eax,offset _N,sizeof _N,offset _size,0
pop eax
pop ebx
pop ecx
pop edx
ret
triangle endp
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
end start
汇编 fatal error A1008: unmatched macro nesting
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-