sample.s

来自「用Java实现的编译器。把源代码编译成SPARC汇编程序」· S 代码 · 共 81 行

S
81
字号
    ! SPARC assembly:     ! Automatically generated by ASM.SPARCGenerator	.file 	"any_file_name".section	".rodata"	.align 8.Scanf_label:	.asciz "%d"	.align 8.Printf_label1:	.asciz "fib_rec(%d) = %d\n"	.align 8.Printf_label2:	.asciz "fib_loop(%d) = %d\n".section	".text"	.align 4	.global main	.globl mainmain:	save	%sp, -120, %sp	add	%fp, -20, %o1	sethi	%hi(.Scanf_label), %o2	or	%o2, %lo(.Scanf_label), %o0	call	scanf,0	nop	ld	[%fp-20], %o0	call	fib_rec,0	nop	mov	%o0, %o2	sethi	%hi(.Printf_label1), %o1	or	%o1, %lo(.Printf_label1), %o0	ld	[%fp-20], %o1	call	printf,0	nop	ret	restorefib_rec:	save	%sp, -112, %sp	st	%i0, [%fp+68]	ld	[%fp+68], %o0	cmp	%o0, 1	bne	.LL4	nop	mov	1, %i0	b	.LL3	nop	b	.LL5	nop.LL4:	ld	[%fp+68], %o0	cmp	%o0, 0	bne	.LL6	nop	mov	0, %i0	b	.LL3	nop	b	.LL5	nop.LL6:	ld	[%fp+68], %o0	add	%o0, -1, %o1	mov	%o1, %o0	call	fib_rec,0	nop	mov	%o0, %l0	ld	[%fp+68], %o0	add	%o0, -2, %o1	mov	%o1, %o0	call	fib_rec,0	nop	mov	%o0, %o1	add	%l0, %o1, %o0	mov	%o0, %i0	b	.LL3	nop.LL7:.LL5:.LL3:	ret	restore

⌨️ 快捷键说明

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