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

📄 crc68.s

📁 给出了 zip 压缩算法的完整实现过程。
💻 S
字号:
;===========================================================================; Copyright (c) 1990-1999 Info-ZIP.  All rights reserved.;; See the accompanying file LICENSE, version 1999-Oct-05 or later; (the contents of which are also included in zip.h) for terms of use.; If, for some reason, both of these files are missing, the Info-ZIP license; also may be found at:  ftp://ftp.cdrom.com/pub/infozip/license.html;===========================================================================.text.globl  _crc32          ; (ulg val, uch *buf, extent bufsize).globl  _get_crc_table  ; ulg *get_crc_table(void)_crc32:        move.l  8(sp),d0        bne    valid        moveq  #0,d0        rtsvalid:  movem.l d2/d3,-(sp)        jsr     _get_crc_table        move.l  d0,a0        move.l  12(sp),d0        move.l  16(sp),a1        move.l  20(sp),d1        not.l   d0        move.l  d1,d2        lsr.l   #3,d1        bra     decr8loop8:  moveq  #0,d3        move.b (a1)+,d3        eor.b  d0,d3        lsl.w  #2,d3        move.l 0(a0,d3.w),d3        lsr.l  #8,d0        eor.l  d3,d0        moveq  #0,d3        move.b (a1)+,d3        eor.b  d0,d3        lsl.w  #2,d3        move.l 0(a0,d3.w),d3        lsr.l  #8,d0        eor.l  d3,d0        moveq  #0,d3        move.b (a1)+,d3        eor.b  d0,d3        lsl.w  #2,d3        move.l 0(a0,d3.w),d3        lsr.l  #8,d0        eor.l  d3,d0        moveq  #0,d3        move.b (a1)+,d3        eor.b  d0,d3        lsl.w  #2,d3        move.l 0(a0,d3.w),d3        lsr.l  #8,d0        eor.l  d3,d0        moveq  #0,d3        move.b (a1)+,d3        eor.b  d0,d3        lsl.w  #2,d3        move.l 0(a0,d3.w),d3        lsr.l  #8,d0        eor.l  d3,d0        moveq  #0,d3        move.b (a1)+,d3        eor.b  d0,d3        lsl.w  #2,d3        move.l 0(a0,d3.w),d3        lsr.l  #8,d0        eor.l  d3,d0        moveq  #0,d3        move.b (a1)+,d3        eor.b  d0,d3        lsl.w  #2,d3        move.l 0(a0,d3.w),d3        lsr.l  #8,d0        eor.l  d3,d0        moveq  #0,d3        move.b (a1)+,d3        eor.b  d0,d3        lsl.w  #2,d3        move.l 0(a0,d3.w),d3        lsr.l  #8,d0        eor.l  d3,d0decr8:  dbra   d1,loop8        and.w   #7,d2        bra     decr1loop1:  moveq  #0,d3        move.b (a1)+,d3        eor.b  d0,d3        lsl.w  #2,d3        move.l 0(a0,d3.w),d3        lsr.l  #8,d0        eor.l  d3,d0decr1:  dbra   d2,loop1done:   movem.l (sp)+,d2/d3        not.l   d0        rts

⌨️ 快捷键说明

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