⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 varcheck.asm

📁 主要是演示汇编的多文件调用并和C、C++配合使用的程序。
💻 ASM
字号:
	TITLE	Varcheck.c
	.386P
include listing.inc
if @Version gt 510
.model FLAT
else
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
_DATA	SEGMENT DWORD USE32 PUBLIC 'DATA'
_DATA	ENDS
CONST	SEGMENT DWORD USE32 PUBLIC 'CONST'
CONST	ENDS
_BSS	SEGMENT DWORD USE32 PUBLIC 'BSS'
_BSS	ENDS
_TLS	SEGMENT DWORD USE32 PUBLIC 'TLS'
_TLS	ENDS
FLAT	GROUP _DATA, CONST, _BSS
	ASSUME	CS: FLAT, DS: FLAT, SS: FLAT
endif
PUBLIC	_Swap
_TEXT	SEGMENT
_a$ = 8
_b$ = 12
_Swap	PROC NEAR
; File Varcheck.c
; Line 4
	push	ebp
	mov	ebp, esp
; Line 5
	mov	eax, DWORD PTR _a$[ebp]
	mov	ecx, DWORD PTR _b$[ebp]
	mov	edx, DWORD PTR [eax]
	xor	edx, DWORD PTR [ecx]
	mov	eax, DWORD PTR _a$[ebp]
	mov	DWORD PTR [eax], edx
; Line 6
	mov	ecx, DWORD PTR _b$[ebp]
	mov	edx, DWORD PTR _a$[ebp]
	mov	eax, DWORD PTR [ecx]
	xor	eax, DWORD PTR [edx]
	mov	ecx, DWORD PTR _b$[ebp]
	mov	DWORD PTR [ecx], eax
; Line 7
	mov	edx, DWORD PTR _a$[ebp]
	mov	eax, DWORD PTR _b$[ebp]
	mov	ecx, DWORD PTR [edx]
	xor	ecx, DWORD PTR [eax]
	mov	edx, DWORD PTR _a$[ebp]
	mov	DWORD PTR [edx], ecx
; Line 8
	pop	ebp
	ret	0
_Swap	ENDP
_TEXT	ENDS
PUBLIC	_main
EXTRN	_printf:NEAR
EXTRN	_getch:NEAR
_DATA	SEGMENT
$SG345	DB	'i=%d,j=%d', 0aH, 00H
	ORG $+1
$SG346	DB	'i=%d,j=%d', 0aH, 00H
_DATA	ENDS
_TEXT	SEGMENT
_i$ = -4
_j$ = -8
_main	PROC NEAR
; Line 11
	push	ebp
	mov	ebp, esp
	sub	esp, 8
; Line 12
	mov	DWORD PTR _i$[ebp], 1
	mov	DWORD PTR _j$[ebp], 2
; Line 13
	mov	eax, DWORD PTR _j$[ebp]
	push	eax
	mov	ecx, DWORD PTR _i$[ebp]
	push	ecx
	push	OFFSET FLAT:$SG345
	call	_printf
	add	esp, 12					; 0000000cH
; Line 14
	lea	edx, DWORD PTR _j$[ebp]
	push	edx
	lea	eax, DWORD PTR _i$[ebp]
	push	eax
	call	_Swap
	add	esp, 8
; Line 15
	mov	ecx, DWORD PTR _j$[ebp]
	push	ecx
	mov	edx, DWORD PTR _i$[ebp]
	push	edx
	push	OFFSET FLAT:$SG346
	call	_printf
	add	esp, 12					; 0000000cH
; Line 16
	call	_getch
; Line 17
	mov	esp, ebp
	pop	ebp
	ret	0
_main	ENDP
_TEXT	ENDS
END

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -