?? paranoia.sbk
字號:
.data
.globl Zero
.align 4
.type Zero,@object
.size Zero,8
Zero:
.long 0
.long 0
.globl Half
.align 4
.type Half,@object
.size Half,8
Half:
.long 0
.long 1071644672
.globl One
.align 4
.type One,@object
.size One,8
One:
.long 0
.long 1072693248
.globl Two
.align 4
.type Two,@object
.size Two,8
Two:
.long 0
.long 1073741824
.globl Three
.align 4
.type Three,@object
.size Three,8
Three:
.long 0
.long 1074266112
.globl Four
.align 4
.type Four,@object
.size Four,8
Four:
.long 0
.long 1074790400
.globl Five
.align 4
.type Five,@object
.size Five,8
Five:
.long 0
.long 1075052544
.globl Eight
.align 4
.type Eight,@object
.size Eight,8
Eight:
.long 0
.long 1075838976
.globl Nine
.align 4
.type Nine,@object
.size Nine,8
Nine:
.long 0
.long 1075970048
.globl TwentySeven
.align 4
.type TwentySeven,@object
.size TwentySeven,8
TwentySeven:
.long 0
.long 1077608448
.globl ThirtyTwo
.align 4
.type ThirtyTwo,@object
.size ThirtyTwo,8
ThirtyTwo:
.long 0
.long 1077936128
.globl TwoForty
.align 4
.type TwoForty,@object
.size TwoForty,8
TwoForty:
.long 0
.long 1080950784
.globl MinusOne
.align 4
.type MinusOne,@object
.size MinusOne,8
MinusOne:
.long 0
.long -1074790400
.globl OneAndHalf
.align 4
.type OneAndHalf,@object
.size OneAndHalf,8
OneAndHalf:
.long 0
.long 1073217536
.globl NoTrials
.align 4
.type NoTrials,@object
.size NoTrials,4
NoTrials:
.long 20
.globl sigfpe
.text
.align 16
.type sigfpe,@function
sigfpe:
pushl %ebp
pushl %ebx
pushl %esi
pushl %edi
movl %esp,%ebp
incl fpecount
pushl $.LC3
call printf
addl $4,%esp
pushl $_IO_stdout_
call fflush
addl $4,%esp
movl sigsave,%edi
cmpl $0,%edi
je .LC4
pushl sigsave
pushl $8
call signal
addl $8,%esp
movl $0,sigsave
pushl $1
pushl $ovfl_buf
call longjmp
addl $8,%esp
.LC4:
call abort
.LC2:
movl %ebp,%esp
popl %edi
popl %esi
popl %ebx
popl %ebp
ret
.Lf6:
.size sigfpe,.Lf6-sigfpe
.data
.align 4
.type msg.758,@object
msg.758:
.long .LC759
.long .LC760
.long .LC761
.long .LC762
.size msg.758,16
.globl main
.text
.align 16
.type main,@function
main:
pushl %ebp
pushl %ebx
pushl %esi
pushl %edi
movl %esp,%ebp
subl $1684,%esp
fldl .LC8
fstpl Zero
fldl .LC9
fstpl One
fldl One
fstpl -8(%ebp)
fldl -8(%ebp)
faddl -8(%ebp)
fstpl Two
fldl Two
fstpl -16(%ebp)
fldl -16(%ebp)
faddl -8(%ebp)
fstpl Three
fldl Three
fstpl -24(%ebp)
fldl -24(%ebp)
faddl -8(%ebp)
fstpl Four
fldl Four
fstpl -32(%ebp)
fldl -32(%ebp)
faddl -8(%ebp)
fstpl Five
fldl -32(%ebp)
faddl -32(%ebp)
fstpl Eight
fldl -24(%ebp)
fmull -24(%ebp)
fstpl Nine
fldl Nine
fmull -24(%ebp)
fstpl TwentySeven
fldl -32(%ebp)
fmull Eight
fstpl ThirtyTwo
fldl -32(%ebp)
fmull Five
fmull -24(%ebp)
fmull -32(%ebp)
fstpl TwoForty
fldl -8(%ebp)
fchs
fstpl MinusOne
fldl -8(%ebp)
fdivl -16(%ebp)
fstpl Half
fldl -8(%ebp)
faddl Half
fstpl OneAndHalf
movl $0,ErrCnt
movl $0,ErrCnt+4
movl $0,ErrCnt+8
movl $0,ErrCnt+12
movl $1,PageNo
movl $0,Milestone
pushl $sigfpe
pushl $8
call signal
addl $8,%esp
call Instructions
call Pause
call Heading
call Pause
call Characteristics
call Pause
call History
call Pause
movl $7,Milestone
pushl $.LC13
call printf
addl $4,%esp
pushl $.LC15
fldl Zero
faddl Zero
fldl Zero
fcompp
fstsw %ax
sahf
jne .LC16
fldl One
fsubl One
fldl Zero
fcompp
fstsw %ax
sahf
jne .LC16
fldl Zero
fcompl One
fstsw %ax
sahf
jae .LC16
fldl One
faddl One
fldl Two
fcompp
fstsw %ax
sahf
jne .LC16
movl $1,-36(%ebp)
jmp .LC17
.LC16:
movl $0,-36(%ebp)
.LC17:
pushl -36(%ebp)
pushl $0
call TstCond
addl $12,%esp
fldl Zero
fchs
fstpl Z
fldl .LC8
fcompl Z
fstsw %ax
sahf
je .LC18
incl ErrCnt
pushl $.LC20
call printf
addl $4,%esp
fldl .LC21
fstpl U1
fldl .LC9
fstpl Radix
call TstPtUf
.LC18:
pushl $.LC23
fldl Two
faddl One
fcompl Three
fstsw %ax
sahf
jne .LC24
fldl Three
faddl One
fcompl Four
fstsw %ax
sahf
jne .LC24
fldl Four
fldl Two
fldl Two
fchs
fmulp %st(1),%st
faddp %st(1),%st
fldl Zero
fcompp
fstsw %ax
sahf
jne .LC24
fldl Four
fsubl Three
fsubl One
fldl Zero
fcompp
fstsw %ax
sahf
jne .LC24
movl $1,-56(%ebp)
jmp .LC25
.LC24:
movl $0,-56(%ebp)
.LC25:
pushl -56(%ebp)
pushl $0
call TstCond
addl $12,%esp
fldl .LC8
fsubl One
fcompl MinusOne
fstsw %ax
sahf
jne .LC28
fldl MinusOne
faddl One
fldl Zero
fcompp
fstsw %ax
sahf
jne .LC28
fldl One
faddl MinusOne
fldl Zero
fcompp
fstsw %ax
sahf
jne .LC28
fldl One
subl $8,%esp
fstpl (%esp)
call fabs
addl $8,%esp
fstpl -132(%ebp)
fldl MinusOne
faddl -132(%ebp)
fldl Zero
fcompp
fstsw %ax
sahf
jne .LC28
fldl MinusOne
fldl MinusOne
fmull MinusOne
faddp %st(1),%st
fldl Zero
fcompp
fstsw %ax
sahf
jne .LC28
movl $1,-100(%ebp)
jmp .LC29
.LC28:
movl $0,-100(%ebp)
.LC29:
pushl $.LC27
pushl -100(%ebp)
pushl $0
call TstCond
addl $12,%esp
pushl $.LC31
fldl Half
faddl MinusOne
faddl Half
fldl Zero
fcompp
fstsw %ax
sahf
jne .LC32
movl $1,-152(%ebp)
jmp .LC33
.LC32:
movl $0,-152(%ebp)
.LC33:
pushl -152(%ebp)
pushl $0
call TstCond
addl $12,%esp
movl $10,Milestone
pushl $.LC35
fldl Three
fmull Three
fcompl Nine
fstsw %ax
sahf
jne .LC36
fldl Nine
fmull Three
fcompl TwentySeven
fstsw %ax
sahf
jne .LC36
fldl Four
faddl Four
fcompl Eight
fstsw %ax
sahf
jne .LC36
fldl Eight
fmull Four
fcompl ThirtyTwo
fstsw %ax
sahf
jne .LC36
fldl ThirtyTwo
fsubl TwentySeven
fsubl Four
fsubl One
fldl Zero
fcompp
fstsw %ax
sahf
jne .LC36
movl $1,-164(%ebp)
jmp .LC37
.LC36:
movl $0,-164(%ebp)
.LC37:
pushl -164(%ebp)
pushl $0
call TstCond
addl $12,%esp
pushl $.LC39
fldl Four
faddl One
fcompl Five
fstsw %ax
sahf
jne .LC40
fldl Four
fmull Five
fmull Three
fmull Four
fcompl TwoForty
fstsw %ax
sahf
jne .LC40
fldl TwoForty
fdivl Three
fldl Four
fmull Four
fmull Five
fsubp %st(1),%st
fldl Zero
fcompp
fstsw %ax
sahf
jne .LC40
fldl TwoForty
fdivl Four
fldl Five
fmull Three
fmull Four
fsubp %st(1),%st
fldl Zero
fcompp
fstsw %ax
sahf
jne .LC40
fldl TwoForty
fdivl Five
fldl Four
fmull Three
fmull Four
fsubp %st(1),%st
fldl Zero
fcompp
fstsw %ax
sahf
jne .LC40
movl $1,-216(%ebp)
jmp .LC41
.LC40:
movl $0,-216(%ebp)
.LC41:
pushl -216(%ebp)
pushl $0
call TstCond
addl $12,%esp
cmpl $0,ErrCnt
jne .LC42
pushl $.LC44
call printf
addl $4,%esp
pushl $.LC45
call printf
addl $4,%esp
.LC42:
pushl $.LC46
call printf
addl $4,%esp
fldl One
fstpl W
.LC47:
fldl W
fstpl -264(%ebp)
fldl -264(%ebp)
faddl -264(%ebp)
fstpl W
fldl W
fstpl -272(%ebp)
fldl -272(%ebp)
faddl One
fstpl Y
fldl Y
fsubl -272(%ebp)
fstpl Z
fldl Z
fsubl One
fstpl Y
.LC48:
fldl Y
subl $8,%esp
fstpl (%esp)
call fabs
addl $8,%esp
fstpl -264(%ebp)
fldl MinusOne
faddl -264(%ebp)
fldl Zero
fcompp
fstsw %ax
sahf
ja .LC47
fldl Zero
fstpl Precision
fldl One
fstpl Y
.LC50:
fldl Y
fstpl -280(%ebp)
fldl W
faddl -280(%ebp)
fstpl Radix
fldl -280(%ebp)
faddl -280(%ebp)
fstpl Y
fldl Radix
fstpl Radix
.LC51:
fldl Zero
fcompl Radix
fstsw %ax
sahf
je .LC50
fldl Two
fcompl Radix
fstsw %ax
sahf
jbe .LC53
fldl One
fstpl Radix
.LC53:
fldl Radix
subl $8,%esp
fstpl (%esp)
pushl $.LC55
call printf
addl $12,%esp
fldl .LC9
fcompl Radix
fstsw %ax
sahf
je .LC56
fldl One
fstpl W
.LC58:
fldl Precision
faddl One
fstpl Precision
fldl W
fmull Radix
fstpl W
fldl W
faddl One
fstpl Y
.LC59:
fldl Y
fsubl W
fldl One
fcompp
fstsw %ax
sahf
je .LC58
.LC56:
fldl One
fdivl W
fstpl U1
fldl U1
fstpl -272(%ebp)
fldl Radix
fmull -272(%ebp)
fstpl U2
fldl -272(%ebp)
subl $8,%esp
fstpl (%esp)
pushl $.LC61
call printf
addl $12,%esp
pushl $.LC62
call printf
addl $4,%esp
fldl Radix
fstpl E0
fldl U1
fstpl E1
fldl U2
fstpl E9
fldl Precision
fstpl E3
fldl Four
fdivl Three
fstpl X
fldl X
fsubl One
fstpl Third
fldl Third
fstpl -280(%ebp)
fldl Half
fsubl -280(%ebp)
fstpl F6
fldl F6
fstpl -288(%ebp)
fldl -288(%ebp)
faddl -288(%ebp)
fstpl X
fldl X
fsubl -280(%ebp)
subl $8,%esp
fstpl (%esp)
call fabs
addl $8,%esp
fstpl -296(%ebp)
fldl -296(%ebp)
fstpl X
fldl U2
fcompl X
fstsw %ax
sahf
jbe .LC63
fldl U2
fstpl X
.LC63:
.LC65:
fldl X
fstpl U2
fldl U2
fstpl -304(%ebp)
fldl Half
fmull -304(%ebp)
fldl ThirtyTwo
fmull -304(%ebp)
fmull -304(%ebp)
faddp %st(1),%st
fstpl Y
fldl One
faddl Y
fstpl Y
fldl Y
fsubl One
fstpl X
.LC66:
fldl X
fcompl U2
fstsw %ax
sahf
jae .LC68
fldl Zero
fcompl X
fstsw %ax
sahf
jb .LC65
.LC68:
fldl Two
fdivl Three
fstpl X
fldl X
fsubl Half
fstpl F6
fldl F6
fstpl -320(%ebp)
fldl -320(%ebp)
faddl -320(%ebp)
fstpl Third
fldl Third
fsubl Half
fstpl X
fldl X
faddl -320(%ebp)
subl $8,%esp
fstpl (%esp)
call fabs
addl $8,%esp
fstpl -328(%ebp)
fldl -328(%ebp)
fstpl X
fldl U1
fcompl X
fstsw %ax
sahf
jbe .LC69
fldl U1
fstpl X
.LC69:
.LC71:
fldl X
fstpl U1
fldl U1
fstpl -344(%ebp)
fldl Half
fmull -344(%ebp)
fldl ThirtyTwo
fmull -344(%ebp)
fmull -344(%ebp)
faddp %st(1),%st
fstpl Y
fldl Half
fsubl Y
fstpl Y
fldl Half
faddl Y
fstpl X
fldl Half
fsubl X
fstpl Y
fldl Half
faddl Y
fstpl X
.LC72:
fldl X
fcompl U1
fstsw %ax
sahf
jae .LC74
fldl Zero
fcompl X
fstsw %ax
sahf
jb .LC71
.LC74:
fldl E1
fcompl U1
fstsw %ax
sahf
jne .LC75
pushl $.LC77
call printf
addl $4,%esp
jmp .LC76
.LC75:
fldl U1
subl $8,%esp
fstpl (%esp)
pushl $.LC78
call printf
addl $12,%esp
.LC76:
fldl One
fdivl U1
fstpl W
fldl Half
fsubl U1
faddl Half
fstpl F9
fldl U2
fdivl U1
faddl .LC79
subl $8,%esp
fstpl (%esp)
call floor
addl $8,%esp
fstpl -360(%ebp)
fldl -360(%ebp)
fstpl Radix
fldl E0
fcompl Radix
fstsw %ax
sahf
jne .LC80
pushl $.LC82
call printf
addl $4,%esp
jmp .LC81
.LC80:
fldl Radix
subl $8,%esp
fstpl (%esp)
pushl $.LC83
call printf
addl $12,%esp
.LC81:
pushl $.LC85
fldl Eight
faddl Eight
fcompl Radix
fstsw %ax
sahf
jb .LC86
movl $1,-364(%ebp)
jmp .LC87
.LC86:
movl $0,-364(%ebp)
.LC87:
pushl -364(%ebp)
pushl $2
call TstCond
addl $12,%esp
pushl $.LC89
fldl Two
fcompl Radix
fstsw %ax
sahf
je .LC93
fldl .LC94
fcompl Radix
fstsw %ax
sahf
je .LC93
fldl One
fcompl Radix
fstsw %ax
sahf
jne .LC90
.LC93:
movl $1,-376(%ebp)
jmp .LC91
.LC90:
movl $0,-376(%ebp)
.LC91:
pushl -376(%ebp)
pushl $3
call TstCond
addl $12,%esp
movl $20,Milestone
pushl $.LC96
fldl F9
fsubl Half
fldl Half
fcompp
fstsw %ax
sahf
jbe .LC97
movl $1,-388(%ebp)
jmp .LC98
.LC97:
movl $0,-388(%ebp)
.LC98:
pushl -388(%ebp)
pushl $0
call TstCond
addl $12,%esp
fldl F9
fstpl X
movl $1,I
fldl X
fsubl Half
fstpl Y
fldl Y
fsubl Half
fstpl Z
pushl $.LC100
fldl One
fcompl X
fstsw %ax
sahf
jne .LC103
fldl Zero
fcompl Z
fstsw %ax
sahf
jne .LC101
.LC103:
movl $1,-400(%ebp)
jmp .LC102
.LC101:
movl $0,-400(%ebp)
.LC102:
pushl -400(%ebp)
pushl $0
call TstCond
addl $12,%esp
fldl One
faddl U2
fstpl X
movl $0,I
movl $25,Milestone
fldl Radix
fsubl One
fstpl BMinusU2
fldl BMinusU2
fsubl U2
faddl One
fstpl BMinusU2
fldl One
fcompl Radix
fstsw %ax
sahf
je .LC104
fldl U1
subl $8,%esp
fstpl (%esp)
call log
addl $8,%esp
fstpl -440(%ebp)
fldl Radix
subl $8,%esp
fstpl (%esp)
call log
addl $8,%esp
fstpl -448(%ebp)
fldl TwoForty
fchs
fmull -440(%ebp)
fdivl -448(%ebp)
fstpl X
fldl Half
faddl X
subl $8,%esp
fstpl (%esp)
call floor
addl $8,%esp
fstpl -456(%ebp)
fldl -456(%ebp)
fstpl Y
fldl X
fsubl Y
subl $8,%esp
fstpl (%esp)
call fabs
addl $8,%esp
fstpl -464(%ebp)
fldl -464(%ebp)
fmull Four
fldl One
fcompp
fstsw %ax
sahf
jbe .LC106
fldl Y
fstpl X
.LC106:
fldl X
fdivl TwoForty
fstpl Precision
fldl Half
faddl Precision
subl $8,%esp
fstpl (%esp)
call floor
addl $8,%esp
fstpl -472(%ebp)
fldl -472(%ebp)
fstpl Y
fldl Precision
fsubl Y
subl $8,%esp
fstpl (%esp)
call fabs
addl $8,%esp
fstpl -480(%ebp)
fldl -480(%ebp)
fmull TwoForty
fldl Half
fcompp
fstsw %ax
sahf
jbe .LC108
fldl Y
fstpl Precision
.LC108:
.LC104:
fldl Precision
subl $8,%esp
fstpl (%esp)
call floor
addl $8,%esp
fstpl -448(%ebp)
fldl -448(%ebp)
fcompl Precision
fstsw %ax
sahf
jne .LC112
fldl One
fcompl Radix
fstsw %ax
sahf
jne .LC110
.LC112:
pushl $.LC113
call printf
addl $4,%esp
pushl $.LC114
call printf
addl $4,%esp
.LC110:
fldl One
fcompl Radix
fstsw %ax
sahf
jne .LC115
pushl $.LC117
call printf
addl $4,%esp
jmp .LC116
.LC115:
fldl Precision
subl $8,%esp
fstpl (%esp)
pushl $.LC118
call printf
addl $12,%esp
.LC116:
pushl $.LC120
fldl U2
fmull Nine
fmull Nine
fmull TwoForty
fldl One
fcompp
fstsw %ax
sahf
jbe .LC121
movl $1,-452(%ebp)
jmp .LC122
.LC121:
movl $0,-452(%ebp)
.LC122:
pushl -452(%ebp)
pushl $1
call TstCond
addl $12,%esp
movl $30,Milestone
fldl One
fdivl Four
fstpl -492(%ebp)
fldl Four
fdivl Three
fsubl One
fsubl -492(%ebp)
fmull Three
fsubl -492(%ebp)
subl $8,%esp
fstpl (%esp)
call fabs
addl $8,%esp
fstpl -500(%ebp)
fldl -500(%ebp)
fstpl X
.LC123:
fldl X
fstpl Z2
fldl Z2
fstpl -516(%ebp)
fldl One
fldl Half
fmull -516(%ebp)
fldl ThirtyTwo
fmull -516(%ebp)
fmull -516(%ebp)
faddp %st(1),%st
faddp %st(1),%st
fsubl One
fstpl X
.LC124:
fldl X
fcompl Z2
fstsw %ax
sahf
jae .LC126
fldl Zero
fcompl X
fstsw %ax
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -