亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? match.asm

?? gz124src.zip is a mini Gzip.
?? ASM
字號:
; match.asm -- optional optimized asm version of longest match in deflate.c; Copyright (C) 1992-1993 Jean-loup Gailly; This is free software; you can redistribute it and/or modify it under the; terms of the GNU General Public License, see the file COPYING.;; Must be assembled with masm -ml. To be used only with C compact model; or large model. (For large model, assemble with -D__LARGE__).; This file is only optional. If you don't have masm or tasm, use the; C version (add -DNO_ASM to CFLAGS in makefile.msc and remove match.obj; from OBJI). If you have reduced WSIZE in zip.h, then change its value; below.;; Turbo C 2.0 does not support static allocation of more than 64K bytes per; file, and does not have SS == DS. So TC and BC++ users must use:;   tasm -ml -DDYN_ALLOC -DSS_NEQ_DS match;;; To simplify the code, the option -DDYN_ALLOC is supported for OS/2; only if the arrays are guaranteed to have zero offset (allocated by; halloc). We also require SS==DS. This is satisfied for MSC but not Turbo C.; $Id: match.asm,v 0.6 1993/01/21 18:49:05 jloup Exp $        name    matchifndef DYN_ALLOC        extrn   _prev         : word        extrn   _window       : byte        prev    equ  _prev    ; offset part        window  equ  _windowendif_DATA    segment  word public 'DATA'        extrn   _nice_match   : word        extrn   _match_start  : word        extrn   _prev_length  : word        extrn   _good_match   : word        extrn   _strstart     : word        extrn   _max_chain_length : wordifdef DYN_ALLOC        extrn   _prev         : word        extrn   _window       : word        prev    equ 0         ; offset forced to zero        window  equ 0        window_seg equ _window[2]	window_off equ 0else	wseg    dw seg _window        window_seg equ wseg	window_off equ offset _windowendif_DATA    endsDGROUP  group _DATA_TEXT   segment word public 'CODE'        assume  cs: _TEXT, ds: DGROUP	public _match_init        public _longest_match	MIN_MATCH     equ 3        MAX_MATCH     equ 258	WSIZE         equ 32768		; keep in sync with zip.h !	MIN_LOOKAHEAD equ (MAX_MATCH+MIN_MATCH+1)	MAX_DIST      equ (WSIZE-MIN_LOOKAHEAD)prev_ptr    dw  seg _prev		; pointer to the prev arrayifdef SS_NEQ_DS    match_start dw  0			; copy of _match_start if SS != DS    nice_match  dw  0			; copy of _nice_match  if SS != DSendif; initialize or check the variables used in match.asm.ifdef __LARGE___match_init proc far			; 'proc far' for large modelelse_match_init proc near			; 'proc near' for compact modelendififdef SS_NEQ_DS        ma_start equ cs:match_start	; does not work on OS/2        nice     equ cs:nice_match	mov	ax,_nice_match	mov     cs:nice_match,ax       	; ugly write to code, crash on OS/2else	assume ss: DGROUP        ma_start equ ss:_match_start        nice     equ ss:_nice_match        mov     ax,ds        mov     bx,ss        cmp     ax,bx                   ; SS == DS?        jne     errorendififdef DYN_ALLOC	cmp	_prev[0],0		; verify zero offset	jne	error	cmp	_window[0],0	jne	error  ifdef SS_NEQ_DS	mov	ax,_prev[2]		; segment value	mov     cs:prev_ptr,ax		; ugly write to code, crash on OS/2        prev_seg  equ cs:prev_ptr  else        prev_seg  equ ss:_prev[2]	; works on OS/2 if SS == DS  endifelse        prev_seg  equ cs:prev_ptrendif	retifdef __LARGE__	extrn   _exit : far		; 'far' for large modelelse	extrn   _exit : near		; 'near' for compact modelendiferror:  call    _exit_match_init endp; -----------------------------------------------------------------------; Set match_start to the longest match starting at the given string and; return its length. Matches shorter or equal to prev_length are discarded,; in which case the result is equal to prev_length and match_start is; garbage.; IN assertions: cur_match is the head of the hash chain for the current;   string (strstart) and its distance is <= MAX_DIST, and prev_length >= 1; int longest_match(cur_match)ifdef __LARGE___longest_match  proc far		 ; 'proc far' for large modelelse_longest_match  proc near		 ; 'proc near' for compact modelendif        push    bp        mov     bp,sp        push    di	push	si	push	dsifdef __LARGE__        cur_match    equ word ptr [bp+6] ; [bp+6] for large modelelse        cur_match    equ word ptr [bp+4] ; [bp+4] for compact modelendif;       window	     equ es:window (es:0 for DYN_ALLOC);       prev	     equ ds:prev;       match        equ es:si;       scan         equ es:di;       chain_length equ bp;       best_len     equ bx;       limit        equ dx	mov	si,cur_match            ; use bp before it is destroyed        mov     bp,_max_chain_length    ; chain_length = max_chain_length	mov	di,_strstart	mov	dx,di	sub	dx,MAX_DIST             ; limit = strstart-MAX_DIST	jae	limit_ok	sub	dx,dx			; limit = NILlimit_ok:        add     di,2+window_off         ; di = offset(window + strstart + 2)        mov     bx,_prev_length         ; best_len = prev_length	mov     es,window_seg        mov     ax,es:[bx+di-3]         ; ax = scan[best_len-1..best_len]        mov     cx,es:[di-2]            ; cx = scan[0..1]	cmp	bx,_good_match		; do we have a good match already?        mov     ds,prev_seg    		; (does not destroy the flags)        assume  ds: nothing        jb      do_scan			; good match?	shr	bp,1			; chain_length >>= 2	shr	bp,1        jmp     short do_scan        even                            ; align destination of branchlong_loop:; at this point, ds:di == scan+2, ds:si == cur_match        mov     ax,[bx+di-3]            ; ax = scan[best_len-1..best_len]        mov     cx,[di-2]               ; cx = scan[0..1]        mov     ds,prev_seg    		; reset ds to address the prev arrayshort_loop:; at this point, di == scan+2, si = cur_match,; ax = scan[best_len-1..best_len] and cx = scan[0..1]if (WSIZE-32768)        and     si,WSIZE-1              ; not needed if WSIZE=32768endif        shl     si,1                    ; cur_match as word index        mov     si,prev[si]             ; cur_match = prev[cur_match]        cmp     si,dx			; cur_match <= limit ?        jbe     the_end        dec     bp                      ; --chain_length        jz      the_enddo_scan:        cmp     ax,word ptr es:window[bx+si-1] ; check match at best_len-1        jne     short_loop        cmp     cx,word ptr es:window[si]      ; check min_match_length match        jne     short_loop        lea     si,window[si+2]         ; si = match        mov     ax,di                   ; ax = scan+2        mov     cx,es        mov     ds,cx			; ds = es = window        mov     cx,(MAX_MATCH-2)/2      ; scan for at most MAX_MATCH bytes        repe    cmpsw                   ; loop until mismatch        je      maxmatch                ; match of length MAX_MATCH?mismatch:        mov     cl,[di-2]               ; mismatch on first or second byte?        sub     cl,[si-2]               ; cl = 0 if first bytes equal        xchg    ax,di                   ; di = scan+2, ax = end of scan        sub     ax,di                   ; ax = len	sub	si,ax			; si = cur_match + 2 + offset(window)	sub	si,2+window_off         ; si = cur_match        sub     cl,1                    ; set carry if cl == 0 (can't use DEC)        adc     ax,0                    ; ax = carry ? len+1 : len        cmp     ax,bx                   ; len > best_len ?        jle     long_loop        mov     ma_start,si             ; match_start = cur_match        mov     bx,ax                   ; bx = best_len = len        cmp     ax,nice                 ; len >= nice_match ?        jl      long_loopthe_end:	pop	ds        assume  ds: DGROUPifdef SS_NEQ_DS	mov	ax,ma_start		; garbage if no match found	mov	ds:_match_start,axendif        pop     si        pop     di        pop     bp        mov     ax,bx                   ; result = ax = best_len        retmaxmatch:                               ; come here if maximum match        cmpsb                           ; increment si and di        jmp     mismatch                ; force match_length = MAX_LENGTH        _longest_match  endp_TEXT   endsend

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一区二区欧美精品| 91精品国产手机| 国产成人亚洲综合色影视| 人妖欧美一区二区| 亚洲国产你懂的| 夜夜嗨av一区二区三区网页| 一区二区三区在线视频免费 | 日韩欧美国产三级| 欧美肥妇bbw| 日韩亚洲欧美在线观看| 日韩欧美二区三区| 久久久久久免费网| 久久久国产精华| 中文字幕中文在线不卡住| 国产精品久久免费看| 国产精品久久久久久亚洲伦 | 成人动漫一区二区在线| 粉嫩在线一区二区三区视频| 99国产精品久久久久久久久久久| 99久久99久久综合| 欧美视频中文字幕| 91精品国产综合久久久久久| 欧美大黄免费观看| 国产精品国产三级国产aⅴ中文| 亚洲区小说区图片区qvod| 视频一区二区不卡| 国产一区二区h| av电影在线观看一区| 在线观看av一区| 欧美不卡在线视频| 亚洲欧美偷拍卡通变态| 丝袜美腿成人在线| 国产成人a级片| 91行情网站电视在线观看高清版| 7777精品伊人久久久大香线蕉超级流畅| 日韩一区二区在线看| 中文字幕免费不卡| 亚洲电影中文字幕在线观看| 激情综合色播激情啊| 91在线云播放| 欧美成人女星排名| 亚洲精品欧美二区三区中文字幕| 免费三级欧美电影| 91国产丝袜在线播放| 2021中文字幕一区亚洲| 亚洲国产精品久久人人爱| 国产一区二区免费看| 欧美三级韩国三级日本一级| 久久这里只有精品6| 亚洲一区二区成人在线观看| 国产成人在线观看| 日韩写真欧美这视频| 亚洲综合激情小说| 国产99精品在线观看| 日韩一二三区不卡| 一区二区欧美精品| 91亚洲男人天堂| 国产欧美一区二区三区鸳鸯浴| 亚洲不卡在线观看| 色偷偷88欧美精品久久久| 欧美国产禁国产网站cc| 久草这里只有精品视频| 欧美日韩国产天堂| 一区二区三区自拍| 91视频在线观看免费| 国产精品情趣视频| 奇米777欧美一区二区| 欧美日韩精品一区二区三区| 亚洲免费伊人电影| 99视频在线精品| 国产精品久久久久久久久久久免费看| 国产又粗又猛又爽又黄91精品| 这里只有精品99re| 日韩精品免费视频人成| 欧美福利视频一区| 亚洲成人av资源| 在线电影欧美成精品| 亚洲综合免费观看高清完整版| av激情成人网| 亚洲欧美日韩在线不卡| 国产精品亚洲第一区在线暖暖韩国 | 在线播放欧美女士性生活| 亚洲成av人片在线| 欧美久久久一区| 欧美bbbbb| 久久久久国产成人精品亚洲午夜| 国产一区二区三区视频在线播放| 精品欧美乱码久久久久久1区2区| 精品一二三四在线| 国产性天天综合网| av网站一区二区三区| 一区二区三区四区亚洲| 精品视频一区 二区 三区| 天天色综合天天| 日韩一级二级三级| 国产精品资源站在线| 中文字幕免费观看一区| 99综合电影在线视频| 亚洲成人综合网站| 日韩女优制服丝袜电影| 国产黄色91视频| 一区二区三区欧美日| 91精品国产色综合久久ai换脸| 精品写真视频在线观看| 中文字幕免费不卡在线| 欧美综合一区二区三区| 精品中文字幕一区二区| 成人欧美一区二区三区白人| 欧美专区在线观看一区| 经典一区二区三区| 亚洲免费色视频| 欧美一级在线视频| 99re热这里只有精品视频| 日韩激情一二三区| 国产精品久久夜| 日韩亚洲欧美在线| 日本高清视频一区二区| 国产一区二区不卡| 无吗不卡中文字幕| 国产精品美女www爽爽爽| 3d动漫精品啪啪1区2区免费| 成人高清免费在线播放| 美女精品一区二区| 亚洲国产高清在线观看视频| 欧美挠脚心视频网站| 波多野结衣在线一区| 毛片一区二区三区| 亚洲国产视频一区| 国产精品毛片高清在线完整版| 欧美一级黄色片| 在线观看日韩毛片| 91在线观看免费视频| 国产一区二区精品久久99| 日韩高清在线一区| 亚洲一区二区在线视频| 国产精品免费视频观看| 久久久国产综合精品女国产盗摄| 91麻豆精品国产无毒不卡在线观看| 一本色道久久综合亚洲精品按摩| 国产成a人亚洲| 久久成人免费网站| 日av在线不卡| 蜜臀av一区二区三区| 午夜视黄欧洲亚洲| 亚洲国产aⅴ成人精品无吗| 最好看的中文字幕久久| 中文字幕一区二区三区蜜月| 久久久夜色精品亚洲| 26uuu国产在线精品一区二区| 欧美一卡二卡三卡四卡| 欧美精品一二三| 欧美人xxxx| 91精品欧美一区二区三区综合在| 欧美在线小视频| 欧美日韩免费视频| 欧美色倩网站大全免费| 欧美三区免费完整视频在线观看| 色婷婷狠狠综合| 在线观看欧美日本| 欧美日韩亚洲国产综合| 欧美日韩成人综合在线一区二区| 欧美剧情片在线观看| 制服丝袜在线91| 精品国精品国产| 久久久久久影视| 亚洲三级电影网站| 一区二区三区.www| 青青草国产成人av片免费| 美女视频黄 久久| 国产一区二区精品在线观看| 国产+成+人+亚洲欧洲自线| 成人黄色免费短视频| 91美女精品福利| 91精品国产品国语在线不卡 | 精品系列免费在线观看| 国产精品一区2区| 粉嫩高潮美女一区二区三区| 91在线视频播放地址| 欧美中文字幕久久| 日韩一区二区视频在线观看| 久久久久久黄色| 亚洲综合色自拍一区| 美国av一区二区| av一本久道久久综合久久鬼色| 欧洲视频一区二区| 欧美不卡一二三| 成人免费在线视频观看| 青娱乐精品视频在线| av成人免费在线观看| 在线精品视频一区二区三四| 欧美成人r级一区二区三区| 一区二区中文视频| 蜜桃av一区二区在线观看| 成人妖精视频yjsp地址| 欧美精品乱人伦久久久久久| 中文字幕欧美日韩一区| 三级成人在线视频| www.久久久久久久久| 日韩一区二区三区四区| 亚洲乱码中文字幕综合|