init.sbk
来自「lcc,一个可变目标c语言编译器的源码」· SBK 代码 · 共 337 行
SBK
337 行
.data.globl words.align 4.type words,@objectwords:.long 1.long 2.long 3.byte 105.byte 102.byte 0.space 3.space 2.long 4.long 5.space 4.byte 102.byte 111.byte 114.space 3.space 2.long 6.long 7.long 8.byte 101.byte 108.byte 115.byte 101.byte 0.space 1.space 2.long 9.long 10.long 11.byte 119.byte 104.byte 105.byte 108.byte 101.space 1.space 2.long 0.space 8.space 8.size words,100.globl wordlist.align 4.type wordlist,@object.size wordlist,4wordlist:.long words.globl x.align 4.type x,@objectx:.long 1.long 2.long 3.long 4.long 0.long 5.long 6.space 12.long 7.space 16.size x,60.globl y.align 4.type y,@objecty:.long x.long x+20.long x+40.long 0.size y,16.globl main.text.align 16.type main,@functionmain:pushl %ebppushl %ebxpushl %esipushl %edimovl %esp,%ebpsubl $8,%espmovl $0,-8(%ebp)jmp .LC8.LC5:movl $0,-4(%ebp)jmp .LC12.LC9:movl -4(%ebp),%edimovl -8(%ebp),%esimovl y(,%esi,4),%esipushl (%esi,%edi,4)pushl $.LC13call printfaddl $8,%esp.LC10:incl -4(%ebp).LC12:movl -4(%ebp),%edimovl -8(%ebp),%esimovl y(,%esi,4),%esicmpl $0,(%esi,%edi,4)jne .LC9pushl $.LC14call printfaddl $4,%esp.LC6:incl -8(%ebp).LC8:movl -8(%ebp),%edimovl y(,%edi,4),%edicmpl $0,%edijne .LC5call fpushl wordlistcall gaddl $4,%espmov $0,%eax.LC4:movl %ebp,%esppopl %edipopl %esipopl %ebxpopl %ebpret.Lf15:.size main,.Lf15-main.data.align 4.type keywords.17,@objectkeywords.17:.long .LC18.long .LC19.long .LC20.long .LC21.long 0.size keywords.17,20.globl f.text.align 16.type f,@functionf:pushl %ebppushl %ebxpushl %esipushl %edimovl %esp,%ebpsubl $4,%espleal keywords.17,%edimovl %edi,-4(%ebp)jmp .LC25.LC22:movl -4(%ebp),%edipushl (,%edi)pushl $.LC26call printfaddl $8,%esp.LC23:movl -4(%ebp),%edileal 4(%edi),%edimovl %edi,-4(%ebp).LC25:movl -4(%ebp),%edimovl (,%edi),%edicmpl $0,%edijne .LC22mov $0,%eax.LC16:movl %ebp,%esppopl %edipopl %esipopl %ebxpopl %ebpret.Lf27:.size f,.Lf27-f.globl g.align 16.type g,@functiong:pushl %ebppushl %ebxpushl %esipushl %edimovl %esp,%ebpsubl $4,%espjmp .LC32.LC29:movl $0,-4(%ebp)jmp .LC36.LC33:movl -4(%ebp),%edimovl 20(%ebp),%esipushl (%esi,%edi,4)pushl $.LC37call printfaddl $8,%esp.LC34:incl -4(%ebp).LC36:movl -4(%ebp),%edicmpl $3,%edijb .LC33movl 20(%ebp),%edileal 12(%edi),%edipushl %edipushl $.LC26call printfaddl $8,%esp.LC30:movl 20(%ebp),%edileal 20(%edi),%edimovl %edi,20(%ebp).LC32:movl 20(%ebp),%edicmpl $0,(,%edi)jne .LC29call hmov $0,%eax.LC28:movl %ebp,%esppopl %edipopl %esipopl %ebxpopl %ebpret.Lf38:.size g,.Lf38-g.globl h.align 16.type h,@functionh:pushl %ebppushl %ebxpushl %esipushl %edimovl %esp,%ebpsubl $4,%espmovl $0,-4(%ebp)jmp .LC43.LC40:imul $20,-4(%ebp),%edileal words+12(%edi),%esipushl %esipushl words+8(%edi)pushl words+4(%edi)pushl words(%edi)pushl $.LC44call printfaddl $20,%esp.LC41:incl -4(%ebp).LC43:movl -4(%ebp),%edicmpl $5,%edijb .LC40mov $0,%eax.LC39:movl %ebp,%esppopl %edipopl %esipopl %ebxpopl %ebpret.Lf48:.size h,.Lf48-h.data.align 1.LC44:.byte 37.byte 100.byte 32.byte 37.byte 100.byte 32.byte 37.byte 100.byte 32.byte 37.byte 115.byte 10.byte 0.align 1.LC37:.byte 37.byte 100.byte 32.byte 0.align 1.LC26:.byte 37.byte 115.byte 10.byte 0.align 1.LC21:.byte 119.byte 104.byte 105.byte 108.byte 101.byte 0.align 1.LC20:.byte 101.byte 108.byte 115.byte 101.byte 0.align 1.LC19:.byte 102.byte 111.byte 114.byte 0.align 1.LC18:.byte 105.byte 102.byte 0.align 1.LC14:.byte 10.byte 0.align 1.LC13:.byte 32.byte 37.byte 100.byte 0.text.ident "LCC: 4.1"
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?