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

📄 fec.s.980621e

📁 当前很多文章多提到的lugi的reed-solomon编码的源代码
💻 980621E
📖 第 1 页 / 共 4 页
字号:
	jne L285	jmp L264	.align 2,0x90L266:	cmpb $0,(%edx)	jne L285L264:	incl %edx	incl %ecx	cmpl %esi,%ecx	jge L234	.align 2,0x90L239:	cmpl %ecx,%ebx	jne L271	cmpb $1,(%edx)	jne L285	jmp L269	.align 2,0x90L271:	cmpb $0,(%edx)	jne L285L269:	incl %edx	leal 1(%ecx),%eax	cmpl %eax,%ebx	jne L276	cmpb $1,(%edx)	jne L285	jmp L274	.align 2,0x90L276:	cmpb $0,(%edx)	jne L285L274:	incl %edx	leal 2(%ecx),%eax	cmpl %eax,%ebx	jne L281	cmpb $1,(%edx)	jne L285	jmp L279	.align 2,0x90L281:	cmpb $0,(%edx)	jne L285L279:	incl %edx	leal 3(%ecx),%eax	cmpl %eax,%ebx	jne L286	cmpb $1,(%edx)	jne L285	jmp L284	.align 2,0x90L286:	cmpb $0,(%edx)	je L284L285:	xorl %eax,%eax	jmp L246	.align 2,0x90L284:	incl %edx	addl $4,%ecx	cmpl %esi,%ecx	jl L239L234:	incl %ebx	cmpl %esi,%ebx	jl L235L233:	movl $1,%eaxL246:	leal -8(%ebp),%esp	popl %ebx	popl %esi	leave	retLfe6:	.size	 _is_identity,Lfe6-_is_identityLC16:	.ascii "indxc\0"LC17:	.ascii "indxr\0"LC18:	.ascii "ipiv\0"LC19:	.ascii " ## __LINE__ ## \0"LC20:	.ascii "singular matrix\12\0"LC21:	.ascii "XXX pivot not found!\12\0"LC22:	.ascii "singular matrix 2\12\0"LC23:	.ascii "AARGH, indxr[col] %d\12\0"LC24:	.ascii "AARGH, indxc[col] %d\12\0"	.align 2	.type	 _invert_mat,@function_invert_mat:	pushl %ebp	movl %esp,%ebp	subl $80,%esp	pushl %edi	pushl %esi	pushl %ebx	movl $1,-16(%ebp)	pushl $LC16	movl 12(%ebp),%edx	leal 0(,%edx,4),%ebx	pushl %ebx	call _my_malloc	movl %eax,-20(%ebp)	pushl $LC17	pushl %ebx	call _my_malloc	movl %eax,-24(%ebp)	pushl $LC18	pushl %ebx	call _my_malloc	movl %eax,-28(%ebp)	pushl $LC19	pushl 12(%ebp)	call _my_malloc	movl %eax,-32(%ebp)	addl $32,%esp	pushl $LC19	pushl 12(%ebp)	call _my_malloc	movl %eax,-36(%ebp)	pushl 12(%ebp)	pushl -32(%ebp)	call _bzero	xorl %eax,%eax	addl $16,%esp	cmpl %eax,12(%ebp)	jle L290	movl 12(%ebp),%ebx	andl $3,%ebx	je L292	cmpl $1,%ebx	jle L474	cmpl $2,%ebx	jle L475	movl -28(%ebp),%ecx	movl $0,(%ecx)	incl %eaxL475:	movl -28(%ebp),%edi	movl $0,(%edi,%eax,4)	incl %eaxL474:	movl -28(%ebp),%edx	movl $0,(%edx,%eax,4)	incl %eax	cmpl %eax,12(%ebp)	jle L290	.align 2,0x90L292:	movl -28(%ebp),%ecx	movl $0,(%ecx,%eax,4)	movl $0,4(%ecx,%eax,4)	movl $0,8(%ecx,%eax,4)	movl $0,12(%ecx,%eax,4)	addl $4,%eax	cmpl %eax,12(%ebp)	jg L292L290:	movl $0,-12(%ebp)	movl 12(%ebp),%edi	cmpl %edi,-12(%ebp)	jge L295	movl $0,-52(%ebp)	.align 2,0x90L297:	movl $-1,-8(%ebp)	movl $-1,-4(%ebp)	movl -12(%ebp),%edx	movl -28(%ebp),%ecx	cmpl $1,(%ecx,%edx,4)	je L298	movl -52(%ebp),%eax	addl %edx,%eax	movl 8(%ebp),%edi	cmpb $0,(%eax,%edi)	je L298	movl %edx,-4(%ebp)	movl %edx,-8(%ebp)	jmp L299	.align 2,0x90L298:	movl $0,-60(%ebp)	movl 12(%ebp),%edx	cmpl %edx,-60(%ebp)	jge L301	.align 2,0x90L303:	movl -60(%ebp),%ecx	movl -28(%ebp),%edi	cmpl $1,(%edi,%ecx,4)	je L302	xorl %esi,%esi	cmpl %esi,12(%ebp)	jle L302	movl %edi,-68(%ebp)	movl 12(%ebp),%eax	andl $3,%eax	je L440	cmpl $1,%eax	jle L441	cmpl $2,%eax	jle L442	cmpl $0,(%edi)	jne L446	movl 12(%ebp),%eax	imull %ecx,%eax	movl 8(%ebp),%edx	cmpb $0,(%eax,%edx)	je L444	movl %ecx,-4(%ebp)	movl $0,-8(%ebp)	jmp L299	.align 2,0x90L446:	movl -68(%ebp),%ecx	cmpl $1,(%ecx)	jle L444	pushl $LC20	jmp L491	.align 2,0x90L444:	addl $4,-68(%ebp)	incl %esiL442:	movl -68(%ebp),%edi	cmpl $0,(%edi)	jne L450	movl 12(%ebp),%eax	imull -60(%ebp),%eax	addl %esi,%eax	movl 8(%ebp),%edx	cmpb $0,(%eax,%edx)	je L448	movl -60(%ebp),%ecx	movl %ecx,-4(%ebp)	movl %esi,-8(%ebp)	jmp L299	.align 2,0x90L450:	movl -68(%ebp),%edi	cmpl $1,(%edi)	jle L448	pushl $LC20	jmp L491	.align 2,0x90L448:	addl $4,-68(%ebp)	incl %esiL441:	movl -68(%ebp),%edx	cmpl $0,(%edx)	jne L454	movl 12(%ebp),%eax	imull -60(%ebp),%eax	addl %esi,%eax	movl 8(%ebp),%ecx	cmpb $0,(%eax,%ecx)	je L452	movl -60(%ebp),%edi	movl %edi,-4(%ebp)	movl %esi,-8(%ebp)	jmp L299	.align 2,0x90L454:	movl -68(%ebp),%edx	cmpl $1,(%edx)	jle L452	pushl $LC20	jmp L491	.align 2,0x90L452:	addl $4,-68(%ebp)	incl %esi	cmpl %esi,12(%ebp)	jle L302L440:	movl -68(%ebp),%ebx	movl %ebx,-68(%ebp)	.align 2,0x90L308:	movl -68(%ebp),%ecx	cmpl $0,(%ecx)	jne L458	movl 12(%ebp),%eax	imull -60(%ebp),%eax	addl %esi,%eax	movl 8(%ebp),%edi	cmpb $0,(%eax,%edi)	je L456	jmp L492	.align 2,0x90L458:	cmpl $1,(%ebx)	jle L456	pushl $LC20	jmp L491	.align 2,0x90L456:	incl %esi	movl -68(%ebp),%ecx	cmpl $0,4(%ecx)	jne L462	movl 12(%ebp),%eax	imull -60(%ebp),%eax	addl %esi,%eax	movl 8(%ebp),%edi	cmpb $0,(%eax,%edi)	je L460	jmp L492	.align 2,0x90L462:	cmpl $1,4(%ebx)	jle L460	pushl $LC20	jmp L491	.align 2,0x90L460:	incl %esi	movl -68(%ebp),%ecx	cmpl $0,8(%ecx)	jne L466	movl 12(%ebp),%eax	imull -60(%ebp),%eax	addl %esi,%eax	movl 8(%ebp),%edi	cmpb $0,(%eax,%edi)	je L464	jmp L492	.align 2,0x90L466:	cmpl $1,8(%ebx)	jle L464	pushl $LC20	jmp L491	.align 2,0x90L464:	incl %esi	movl -68(%ebp),%ecx	cmpl $0,12(%ecx)	jne L470	movl 12(%ebp),%eax	imull -60(%ebp),%eax	addl %esi,%eax	movl 8(%ebp),%edi	cmpb $0,(%eax,%edi)	je L468L492:	movl -60(%ebp),%edx	movl %edx,-4(%ebp)	movl %esi,-8(%ebp)	jmp L299	.align 2,0x90L470:	cmpl $1,12(%ebx)	jle L468	pushl $LC20	jmp L491	.align 2,0x90L468:	addl $16,%ebx	addl $16,-68(%ebp)	incl %esi	cmpl %esi,12(%ebp)	jg L308L302:	incl -60(%ebp)	movl 12(%ebp),%ecx	cmpl %ecx,-60(%ebp)	jl L303L301:	cmpl $-1,-8(%ebp)	jne L299	pushl $LC21	jmp L491	.align 2,0x90L299:	movl -8(%ebp),%edi	movl -28(%ebp),%edx	incl (%edx,%edi,4)	cmpl %edi,-4(%ebp)	je L317	xorl %esi,%esi	cmpl %esi,12(%ebp)	jle L317	movl -4(%ebp),%ecx	imull 12(%ebp),%ecx	movl %ecx,-44(%ebp)	imull 12(%ebp),%edi	movl %edi,-60(%ebp)	movl 12(%ebp),%eax	andl $3,%eax	je L321	cmpl $1,%eax	jle L422	cmpl $2,%eax	jle L423	movl 8(%ebp),%edx	movb (%ecx,%edx),%dl	movl 8(%ebp),%ecx	movb (%edi,%ecx),%al	movl -44(%ebp),%edi	movb %al,(%edi,%ecx)	movl -60(%ebp),%edi	movb %dl,(%edi,%ecx)	incl %esiL423:	movl -44(%ebp),%edx	addl %esi,%edx	movl 8(%ebp),%ecx	movb (%edx,%ecx),%bl	movl -60(%ebp),%edi	addl %esi,%edi	movb (%edi,%ecx),%al	movb %al,(%edx,%ecx)	movb %bl,(%edi,%ecx)	incl %esiL422:	movl -44(%ebp),%edx	addl %esi,%edx	movl 8(%ebp),%ecx	movb (%edx,%ecx),%bl	movl -60(%ebp),%edi	addl %esi,%edi	movb (%edi,%ecx),%al	movb %al,(%edx,%ecx)	movb %bl,(%edi,%ecx)	incl %esi	cmpl %esi,12(%ebp)	jle L317	.align 2,0x90L321:	movl -44(%ebp),%edx	addl %esi,%edx	movl 8(%ebp),%ecx	movb (%edx,%ecx),%bl	movl -60(%ebp),%edi	addl %esi,%edi	movb (%edi,%ecx),%al	movb %al,(%edx,%ecx)	movb %bl,(%edi,%ecx)	leal 1(%esi),%eax	movl -44(%ebp),%edx	addl %eax,%edx	movb (%edx,%ecx),%bl	addl -60(%ebp),%eax	movb (%eax,%ecx),%cl	movl 8(%ebp),%edi	movb %cl,(%edx,%edi)	movb %bl,(%eax,%edi)	leal 2(%esi),%eax	movl -44(%ebp),%edx	addl %eax,%edx	movb (%edx,%edi),%bl	addl -60(%ebp),%eax	movb (%eax,%edi),%cl	movb %cl,(%edx,%edi)	movb %bl,(%eax,%edi)	leal 3(%esi),%eax	movl -44(%ebp),%edi	addl %eax,%edi	movl 8(%ebp),%edx	movb (%edi,%edx),%bl	addl -60(%ebp),%eax	movb (%eax,%edx),%cl	movb %cl,(%edi,%edx)	movb %bl,(%eax,%edx)	addl $4,%esi	cmpl %esi,12(%ebp)	jg L321L317:	movl -4(%ebp),%ecx	movl -12(%ebp),%edi	movl -24(%ebp),%edx	movl %ecx,(%edx,%edi,4)	movl -8(%ebp),%edx	movl -20(%ebp),%ecx	movl %edx,(%ecx,%edi,4)	movl -8(%ebp),%eax	imull 12(%ebp),%eax	addl 8(%ebp),%eax	movl %eax,-40(%ebp)	movb (%edx,%eax),%al	testb %al,%al	jne L323	pushl $LC22L491:	pushl $___sF+176	call _fprintf	addl $8,%esp	jmp L313	.align 2,0x90L323:	cmpb $1,%al	je L324	andl $255,%eax	movb _inverse(%eax),%al	movl -40(%ebp),%edi	movl -8(%ebp),%edx	movb $1,(%edx,%edi)	xorl %esi,%esi	cmpl %esi,12(%ebp)	jle L324	andl $255,%eax	sall $8,%eax	leal _gf_mul_table(%eax),%ebx	movl %edi,-68(%ebp)	movl 12(%ebp),%eax	andl $3,%eax	je L402	cmpl $1,%eax	jle L403	cmpl $2,%eax	jle L404	movzbl (%edi),%eax	movb (%eax,%ebx),%al	movb %al,(%edi)	incl %edi	movl %edi,-68(%ebp)	incl %esiL404:	movl -68(%ebp),%ecx	movzbl (%ecx),%eax	movb (%eax,%ebx),%al	movb %al,(%ecx)	incl %ecx	movl %ecx,-68(%ebp)	incl %esiL403:	movl -68(%ebp),%edi	movzbl (%edi),%eax	movb (%eax,%ebx),%al	movb %al,(%edi)	incl %edi	movl %edi,-68(%ebp)	incl %esi	cmpl %esi,12(%ebp)	jle L324L402:	movl -68(%ebp),%edx	movl %edx,-60(%ebp)	movl %edx,-68(%ebp)	.align 2,0x90L328:	movl -68(%ebp),%ecx	movzbl (%ecx),%eax	movb (%eax,%ebx),%al	movl -60(%ebp),%edi	movb %al,(%edi)	movzbl 1(%ecx),%eax	movb (%eax,%ebx),%al	movb %al,1(%edi)	movzbl 2(%ecx),%eax	movb (%eax,%ebx),%al	movb %al,2(%edi)	movzbl 3(%ecx),%eax	movb (%eax,%ebx),%al	movb %al,3(%edi)	addl $4,%edi	movl %edi,-60(%ebp)	addl $4,%ecx	movl %ecx,-68(%ebp)	addl $4,%esi	cmpl %esi,12(%ebp)	jg L328L324:	movl -32(%ebp),%edx	movl -8(%ebp),%ecx	movb $1,(%ecx,%edx)	pushl 12(%ebp)	pushl %edx	pushl -40(%ebp)	call _bcmp	addl $12,%esp	testl %eax,%eax	je L330	movl 8(%ebp),%edi	movl %edi,-60(%ebp)	xorl %esi,%esi	cmpl %esi,12(%ebp)	jle L330	movl %edi,%ebx	addl -8(%ebp),%ebx	movl 12(%ebp),%eax	andl $3,%eax	je L334	cmpl $1,%eax	jle L377	cmpl $2,%eax	jle L378	cmpl %esi,-8(%ebp)	je L380	movb (%ebx),%al	movb $0,(%ebx)	testb %al,%al	je L380	pushl 12(%ebp)	andl $255,%eax	pushl %eax	pushl -40(%ebp)	pushl %edi	call _addmul1	addl $16,%espL380:	incl %esi	addl 12(%ebp),%ebx	movl 12(%ebp),%edx	addl %edx,-60(%ebp)L378:	cmpl %esi,-8(%ebp)	je L383	movb (%ebx),%al	movb $0,(%ebx)	testb %al,%al	je L383	pushl 12(%ebp)	andl $255,%eax	pushl %eax	pushl -40(%ebp)	pushl -60(%ebp)	call _addmul1	addl $16,%espL383:	incl %esi	addl 12(%ebp),%ebx	movl 12(%ebp),%ecx	addl %ecx,-60(%ebp)L377:	cmpl %esi,-8(%ebp)	je L386	movb (%ebx),%al	movb $0,(%ebx)	testb %al,%al	je L386	pushl 12(%ebp)	andl $255,%eax	pushl %eax	pushl -40(%ebp)	pushl -60(%ebp)	call _addmul1	addl $16,%espL386:	incl %esi	addl 12(%ebp),%ebx	movl 12(%ebp),%edi	addl %edi,-60(%ebp)	cmpl %edi,%esi	jge L330	.align 2,0x90L334:	cmpl %esi,-8(%ebp)	je L389	movb (%ebx),%al	movb $0,(%ebx)	testb %al,%al	je L389	pushl 12(%ebp)	andl $255,%eax	pushl %eax	pushl -40(%ebp)	pushl -60(%ebp)	call _addmul1	addl $16,%espL389:	leal 1(%esi),%eax	addl 12(%ebp),%ebx	movl 12(%ebp),%edx	addl %edx,-60(%ebp)	cmpl %eax,-8(%ebp)	je L392	movb (%ebx),%al	movb $0,(%ebx)	testb %al,%al	je L392	pushl %edx	andl $255,%eax	pushl %eax	pushl -40(%ebp)	pushl -60(%ebp)	call _addmul1	addl $16,%espL392:	leal 2(%esi),%eax	addl 12(%ebp),%ebx	movl 12(%ebp),%ecx	addl %ecx,-60(%ebp)	cmpl %eax,-8(%ebp)	je L395	movb (%ebx),%al	movb $0,(%ebx)	testb %al,%al	je L395	pushl %ecx	andl $255,%eax	pushl %eax	pushl -40(%ebp)	pushl -60(%ebp)	call _addmul1	addl $16,%espL395:	leal 3(%esi),%eax	addl 12(%ebp),%ebx	movl 12(%ebp),%edi	addl %edi,-60(%ebp)	cmpl %eax,-8(%ebp)	je L398	movb (%ebx),%al	movb $0,(%ebx)	testb %al,%al	je L398	pushl %edi	andl $255,%eax	pushl %eax	pushl -40(%ebp)	pushl -60(%ebp)	call _addmul1	addl $16,%espL398:	addl $4,%esi	addl 12(%ebp),%ebx	movl 12(%ebp),%edx	addl %edx,-60(%ebp)	cmpl %edx,%esi	jl L334L330:	movl -32(%ebp),%ecx	movl -8(%ebp),%edi	movb $0,(%edi,%ecx)	movl 12(%ebp),%edx	addl %edx,-52(%ebp)	incl -12(%ebp)	cmpl %edx,-12(%ebp)	jl L297L295:	movl 12(%ebp),%ecx	decl %ecx	movl %ecx,-12(%ebp)	js L340	leal 0(,%ecx,4),%eax	movl -20(%ebp),%esi	addl %eax,%esi	addl -24(%ebp),%eax	movl %eax,-48(%ebp)	.align 2,0x90L342:	movl -48(%ebp),%edi	cmpl $0,(%edi)	jl L344	movl 12(%ebp),%edx	cmpl %edx,(%edi)	jl L343L344:	movl -48(%ebp),%ecx	pushl (%ecx)	pushl $LC23	jmp L493	.align 2,0x90L343:	cmpl $0,(%esi)	jl L347	movl 12(%ebp),%edi	cmpl %edi,(%esi)	jl L346L347:	pushl (%esi)	pushl $LC24L493:	pushl $___sF+176	call _fprintf	addl $12,%esp	jmp L341	.align 2,0x90L346:	movl -48(%ebp),%edx	movl (%edx),%edx	movl %edx,-56(%ebp)	cmpl %edx,(%esi)	je L341	movl $0,-60(%ebp)	movl 12(%ebp),%ecx	cmpl %ecx,-60(%ebp)	jge L341	xorl %ebx,%ebx	movl %ecx,%eax	andl $3,%eax	je L353	cmpl $1,%eax	jle L358	cmpl $2,%eax	jle L359	movl 8(%ebp),%ecx	movb (%edx,%ecx),%dl	movl (%esi),%eax	movb (%eax,%ecx),%al	movl -56(%ebp),%edi	movb %al,(%edi,%ecx)	movl (%esi),%eax	movb %dl,(%eax,%ecx)	movl 12(%ebp),%ebx	movl $1,-60(%ebp)L359:	movl %ebx,%edx	movl -48(%ebp),%ecx	addl (%ecx),%edx	movl %edx,-68(%ebp)	movl 8(%ebp),%ecx	movb (%edx,%ecx),%dl	movl %ebx,%eax	addl (%esi),%eax	movb (%eax,%ecx),%al	movl -68(%ebp),%edi	movb %al,(%edi,%ecx)	movl %ebx,%eax	addl (%esi),%eax	movb %dl,(%eax,%ecx)	addl 12(%ebp),%ebx	incl -60(%ebp)L358:

⌨️ 快捷键说明

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