T3 Uebungsblatt 2 Assembler Quelltext
2002-11-03 13:21
Fred
Moin!
Fuer alle, die den Kram von zu Hause aus auf nem intel Rechner kommentieren wollen hier der Quelltext. Die Labels stimmen nicht mit denen auf dem Uebugngszettel ueberein, der zu kommentierende Teil liegt zwischen L90 und L95.
Fuer alle, die den Kram von zu Hause aus auf nem intel Rechner kommentieren wollen hier der Quelltext. Die Labels stimmen nicht mit denen auf dem Uebugngszettel ueberein, der zu kommentierende Teil liegt zwischen L90 und L95.
.section ".text",#alloc,#execinstr
.align 8
.skip 16
! block 0
.global unter
.type unter,2
unter:
save %sp,-104,%sp
! block 1
.L90:
! File quadrat.c:
! 1 /* quadrat.c */
! 2
! 3 #include
! 4
! 5 void unter()
! 6 {
! 7 int b = 5;
mov 5,%i5
! 8 for (;b>0;--b)
cmp %i5,0
ble .L94
nop
! block 2
.L_y0:
sethi %hi(.L96),%l1
or %l1,%lo(.L96),%l1
.L95:
.L92:
! 9 {
! 10 printf("Quadrat: %d\n", b*b);
smul %i5,%i5,%o1
call printf
mov %l1,%o0
sub %i5,1,%i5
cmp %i5,0
bg .L92
nop
! block 3
.L97:
.L94:
.L89:
jmp %i7+8
restore
.size unter,(.-unter)
.align 8
.align 8
.skip 16
! block 0
.global main
.type main,2
main:
save %sp,-104,%sp
! block 1
.L101:
! File quadrat.c:
! 11 }
! 12 }
! 13
! 14 int main()
! 15 {
! 16 unter();
call unter
nop
! 17 return 0;
mov %g0,%i0
jmp %i7+8
restore
! block 2
.L100:
jmp %i7+8
restore
.size main,(.-main)
.align 8
.section ".rodata1",#alloc
.align 4
.L96:
.ascii "Quadrat: %d\n\000"
.type .L96,#object
.size .L96,13
.section ".bss",#alloc,#write
Bbss.bss:
.skip 0
.type Bbss.bss,#object
.size Bbss.bss,0
.section ".data",#alloc,#write
Ddata.data:
.skip 0
.type Ddata.data,#object
.size Ddata.data,0
.section ".rodata",#alloc
Drodata.rodata:
.skip 0
.type Drodata.rodata,#object
.size Drodata.rodata,0
.file "quadrat.c"
.xstabs ".stab.index","V=6.0 ; DBG_GEN=3.4.5 ; Xa ;
R=Sun WorkShop 6 update 2 C 5.3 Patch 111679-03
2001/09/29",60,0,0,1036406994
.xstabs ".stab.index","/home/j2001/1winkler/t3;
/opt/SUNWspro/bin/../WS6U2/bin/cc -S quadrat.c",52,0,0,0
.xstabs ".stab.index","main",42,0,0,0
.ident "@(#)stdio.h 1.78 99/12/08 SMI"
.ident "@(#)stdio_iso.h 1.2 99/10/25 SMI"
.ident "@(#)feature_tests.h 1.18 99/07/26 SMI"
.ident "@(#)isa_defs.h 1.20 99/05/04 SMI"
.ident "@(#)va_list.h 1.12 99/05/04 SMI"
.ident "@(#)stdio_tag.h 1.3 98/04/20 SMI"
.ident "@(#)stdio_impl.h 1.8 99/06/10 SMI"
.ident "acomp: Sun WorkShop 6 update 2 C 5.3
Patch 111679-03 2001/09/29"
.global __fsr_init_value
__fsr_init_value = 0x0