日韩精品一区二区三区在线视频放-无码中文字幕V?一区二区-成年片免费观看视频-国内少妇人妻丰满av-国产精品中文字幕免费观看-亚洲成人久久一区二区三区-国内少妇偷人精品视频无缓冲-一区二区国产精品日本一区二区三区在线网

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營的一線實(shí)戰(zhàn)洞察。

COBOL報(bào)表引擎:編譯期聲明式報(bào)表生成原理與實(shí)踐

COBOL報(bào)表引擎:編譯期聲明式報(bào)表生成原理與實(shí)踐 簡介本資源是一份面向COBOL初學(xué)者與企業(yè)遺留系統(tǒng)維護(hù)人員的報(bào)表開發(fā)實(shí)踐指南聚焦COBOL環(huán)境中結(jié)構(gòu)化報(bào)表生成的核心技術(shù)實(shí)現(xiàn)。內(nèi)容以完整可運(yùn)行的rpt001程序?yàn)檩d體系統(tǒng)解析ID Division、Environment Division含文件路徑映射與I-O配置、Data Division客戶主文件custmast.dat記錄布局、銷售報(bào)表輸出格式定義及Report Section頁眉/頁腳/標(biāo)題/時(shí)間戳等報(bào)表段控制邏輯覆蓋EOF判斷、日期時(shí)間格式化、多級(jí)控制頭尾等關(guān)鍵編程要點(diǎn)。資源為1個(gè)35KB的Word文檔.doc內(nèi)含帶行號(hào)的源碼節(jié)選與逐段注釋說明便于對(duì)照學(xué)習(xí)與代碼復(fù)用。目前已有223人學(xué)習(xí)下載適合需要掌握COBOL報(bào)表編制規(guī)范、理解傳統(tǒng)金融/政務(wù)系統(tǒng)報(bào)表邏輯、或開展課程實(shí)驗(yàn)與項(xiàng)目遷移的開發(fā)者。1. COBOL報(bào)表段不是“語法糖”而是編譯器驅(qū)動(dòng)的聲明式報(bào)表引擎為什么GENERATE detail-line能自動(dòng)完成分頁、求和、行計(jì)數(shù)而手寫WRITE卻要自己維護(hù)所有狀態(tài)你寫過 COBOL 報(bào)表程序嗎大概率寫過——但很可能沒真正搞懂為什么INITIATE rep之后只調(diào)用一次GENERATE detail-line就能讓編譯器自動(dòng)在第 52 行觸發(fā)頁尾、在文件末尾插入合計(jì)行、把SUM cm-sales-this-ytd累加進(jìn)帶千位分隔符的z,zzz,zzz.99字段里還順手把page-counter加 1這不是魔法也不是運(yùn)行時(shí)解釋執(zhí)行這是 COBOL 編譯器在生成目標(biāo)代碼時(shí)就把報(bào)表邏輯硬編碼進(jìn)了執(zhí)行流。它不依賴外部庫不調(diào)用系統(tǒng) API甚至不依賴標(biāo)準(zhǔn) I/O 緩沖區(qū)——整套機(jī)制完全由REPORT SECTION的聲明結(jié)構(gòu)驅(qū)動(dòng)由編譯器靜態(tài)分析CONTROLS ARE FINAL、PAGE LIMITS IS 66、SUM子句和TYPE IS CONTROL FOOTING FINAL這些語句生成一套專用的狀態(tài)機(jī)。這意味著你改一行LINE PLUS 2編譯器就重算整個(gè)頁布局你刪掉SUM它就徹底移除求和寄存器初始化代碼你把CONTROLS ARE FINAL換成CONTROLS ARE cm-salesrep-number它立刻生成按銷售員分組的嵌套控制邏輯。這種深度耦合正是 COBOL 在 1960 年代就能支撐銀行日終報(bào)表批量處理的根本原因——它把“報(bào)表”從應(yīng)用層邏輯中剝離升格為語言級(jí)原語。今天你用 Python pandas 寫df.groupby().sum()本質(zhì)仍是數(shù)據(jù)操作而 COBOL 的SUM是編譯期綁定的報(bào)表生命周期事件。不理解這點(diǎn)你就永遠(yuǎn)在用WRITE手動(dòng)拼接空格、計(jì)算行號(hào)、自己寫IF line-count 66 THEN ...——那不是在用 COBOL是在用 COBOL 語法寫 C。2. REPORT SECTION 不是配置文件而是編譯器可解析的報(bào)表元模型從RD rep到01 detail-foot type is control footing final的逐層語義解析COBOL 的REPORT SECTION看似只是聲明一堆01級(jí)項(xiàng)實(shí)則構(gòu)成了一套完整的、有向的、帶約束的報(bào)表元模型。它不是自由格式文本而是被編譯器嚴(yán)格解析的 AST抽象語法樹輸入。我們拆解rpt0001中的關(guān)鍵節(jié)點(diǎn)看編譯器如何將這些聲明翻譯成可執(zhí)行的報(bào)表狀態(tài)機(jī)。2.1RD rep報(bào)表描述符Report Descriptor是整個(gè)報(bào)表的根節(jié)點(diǎn)與上下文容器rd rep controls are final page limits are 66 lines heading 30 first detail 9 last detail 52 footing 61.這六行不是注釋而是編譯器構(gòu)建報(bào)表調(diào)度器的核心參數(shù)controls are final聲明該報(bào)表無分組控制字段即不分頁/不分組匯總所有CONTROL HEADING/FOOTING將作為全局報(bào)表頭尾處理。若改為controls are cm-salesrep-number編譯器會(huì)插入一個(gè)隱式PERFORM UNTIL cm-salesrep-number CHANGES循環(huán)并為每個(gè)銷售員生成獨(dú)立的CONTROL FOOTING。page limits are 66 lines這不是建議值而是硬性約束。編譯器據(jù)此生成頁計(jì)數(shù)器page-counter、當(dāng)前行號(hào)line-counter兩個(gè)隱式工作存儲(chǔ)變量并在每次GENERATE前插入IF line-counter 66 THEN PERFORM page-break-logic檢查。注意line-counter初始值為 0heading 30表示報(bào)表頭占 30 行所以實(shí)際可用明細(xì)行是66 - 30 - 61 -25錯(cuò)——footing 61是頁腳起始行號(hào)從 1 開始計(jì)意味著頁腳必須從第 61 行開始輸出因此明細(xì)區(qū)最大行數(shù)是61 - 9 52行first detail 9定義明細(xì)首行。編譯器靜態(tài)驗(yàn)證9 52 61否則報(bào)錯(cuò)PAGE LIMITS VIOLATED。heading 30/footing 61定義物理頁內(nèi)絕對(duì)坐標(biāo)。編譯器據(jù)此生成MOVE The Report of Customer TO rep-head-line-15-col-40類指令并確保rep-head在每頁第 30 行輸出無論前面是否發(fā)生NEXT PAGE。提示PAGE LIMITS的校驗(yàn)發(fā)生在編譯期而非運(yùn)行時(shí)。你無法在PROCEDURE DIVISION中動(dòng)態(tài)修改它——因?yàn)轫摬季忠言谀繕?biāo)代碼中固化。2.201 rep-head type is report heading報(bào)表頭是“一次性觸發(fā)”的頂層節(jié)點(diǎn)01 rep-head type is report heading next group is next page. 02 line 15 column 40 pic x(50) value is The Report of Customer. 02 line 50 column 45 pic x(40) value is Neusoft 2007.1.18.type is report heading告訴編譯器此01項(xiàng)屬于REPORT HEADING類型其輸出時(shí)機(jī)由RD rep的HEADING子句控制此處為第 30 行且僅在報(bào)表首頁輸出。next group is next page是關(guān)鍵——它不是跳頁指令而是聲明當(dāng)此組輸出完畢后后續(xù)所有GENERATE必須在新頁開始。編譯器據(jù)此在生成rep-head輸出代碼后插入ADD 1 TO page-counter和MOVE 0 TO line-counter。注意line 15和line 50是相對(duì)于頁首的偏移而非絕對(duì)行號(hào)編譯器會(huì)將其轉(zhuǎn)換為WRITE ... AT LINE 3015即第 45 行和WRITE ... AT LINE 3050即第 80 行——但第 80 行已超PAGE LIMITS 66所以實(shí)際執(zhí)行時(shí)line 50觸發(fā)隱式NEXT PAGErep-head被拆到兩頁第 30 行輸出The Report...第 61 行footing起始前無法容納第二行于是強(qiáng)制翻頁Neusoft...輸出在第二頁第 30 行。這就是為什么REPORT HEADING必須整體適配HEADING行數(shù)范圍——編譯器不會(huì)幫你換行或截?cái)唷?.301 detail-line type is detail明細(xì)行是“循環(huán)體”其SOURCE字段綁定數(shù)據(jù)流管道01 detail-line type is detail. 02 line plus 1. 03 column 10 pic 9(5) source cm-customer-number. 03 column 20 pic x(20) source cm-customer-name. 03 column 50 pic s9(5)v9(2) source cm-sales-this-ytd. 03 column 70 pic s9(5)v9(2) source cm-sales-last-ytd.type is detail標(biāo)識(shí)此組為明細(xì)數(shù)據(jù)行模板。line plus 1意味著每次GENERATE detail-line編譯器自動(dòng)執(zhí)行ADD 1 TO line-counter然后將cm-customer-number等字段值按PIC描述的格式如9(5)表示右對(duì)齊 5 位數(shù)字s9(5)v9(2)表示帶符號(hào)小數(shù)轉(zhuǎn)換后寫入line-counter指向的當(dāng)前行。這里沒有MOVE或STRING指令——SOURCE是編譯器注入的數(shù)據(jù)綁定指令。更關(guān)鍵的是cm-customer-number必須來自FILE SECTION中FD定義的記錄此處是custmast文件的customer-master-record且其PIC必須與detail-line中的PIC兼容如9(5)可接收9(5)但不能接收x(5)。若類型不匹配編譯器報(bào)錯(cuò)INCOMPATIBLE SOURCE USAGE而非運(yùn)行時(shí)異常。2.401 detail-foot type is control footing final控制尾是“終結(jié)事件”SUM觸發(fā)編譯器注入累加器01 detail-foot type is control footing final next group is next page. 02 line plus 2. 03 column 20 pic x(5) value is SUM:. 03 column 50 pic z,zzz,zzz.99 sum cm-sales-this-ytd. 03 column 70 pic z,zzz,zzz.99 sum cm-sales-last-ytd.type is control footing final表明這是報(bào)表結(jié)束時(shí)觸發(fā)的全局合計(jì)行。final關(guān)鍵字讓編譯器知道此組僅在TERMINATE rep前執(zhí)行一次。sum cm-sales-this-ytd是核心——它不是函數(shù)調(diào)用而是告訴編譯器為cm-sales-this-ytd字段創(chuàng)建一個(gè)隱式累加器通常命名為sum-cm-sales-this-ytd并在每次GENERATE detail-line時(shí)自動(dòng)生成ADD cm-sales-this-ytd TO sum-cm-sales-this-ytd指令。pic z,zzz,zzz.99則指定輸出格式z表示前導(dǎo)零抑制,是千位分隔符.99是小數(shù)點(diǎn)后兩位。編譯器據(jù)此生成MOVE sum-cm-sales-this-ytd TO detail-foot-col50并調(diào)用內(nèi)置格式化例程如CBL_FORMAT_NUMBER轉(zhuǎn)換為字符串。注意SUM字段必須是PIC中含9或S9的數(shù)值型且SUM子句只能出現(xiàn)在CONTROL FOOTING或REPORT FOOTING中——若誤寫在DETAIL行編譯器直接拒絕。3.INITIATE/GENERATE/TERMINATE不是過程調(diào)用而是報(bào)表狀態(tài)機(jī)的三態(tài)躍遷從初始化到銷毀的全生命周期控制COBOL 報(bào)表的執(zhí)行模型本質(zhì)上是一個(gè)三態(tài)有限狀態(tài)機(jī)FSM由INITIATE、GENERATE、TERMINATE三條語句驅(qū)動(dòng)狀態(tài)轉(zhuǎn)換。它們不是普通的過程調(diào)用而是編譯器生成的、針對(duì)特定RD的專用狀態(tài)切換指令。理解這三者的精確語義是避免報(bào)表錯(cuò)位、漏行、重復(fù)輸出的關(guān)鍵。3.1INITIATE rep進(jìn)入INITIALIZED狀態(tài)重置所有隱式計(jì)數(shù)器與累加器initiate rep.執(zhí)行此語句時(shí)編譯器生成的代碼會(huì)做以下原子操作將page-counter置為 1首頁將line-counter置為 0頁內(nèi)行號(hào)歸零將所有SUM字段對(duì)應(yīng)的隱式累加器如sum-cm-sales-this-ytd清零將report-status隱式變量設(shè)為INITIALIZED不輸出任何內(nèi)容——INITIATE僅重置狀態(tài)不觸發(fā)REPORT HEADING注意INITIATE必須在OPEN OUTPUT salesrpt之后、首次GENERATE之前執(zhí)行。若在OPEN前調(diào)用編譯器可能報(bào)錯(cuò)REPORT FILE NOT OPEN若在GENERATE后調(diào)用則因狀態(tài)機(jī)已進(jìn)入ACTIVE態(tài)導(dǎo)致未定義行為常見表現(xiàn)為頁頭重復(fù)輸出。3.2GENERATE detail-line從INITIALIZED或ACTIVE態(tài)躍遷至ACTIVE態(tài)驅(qū)動(dòng)行輸出與狀態(tài)更新generate detail-line.這是狀態(tài)機(jī)最核心的躍遷。執(zhí)行時(shí)編譯器代碼執(zhí)行以下序列檢查頁邊界IF line-counter 66 THEN PERFORM page-break-logicpage-break-logic包含輸出PAGE HEADING若定義、ADD 1 TO page-counter、MOVE 0 TO line-counter更新行號(hào)ADD 1 TO line-counter因detail-line定義為line plus 1數(shù)據(jù)綁定與格式化將cm-customer-number等SOURCE字段按PIC描述轉(zhuǎn)換為字符填充到line-counter對(duì)應(yīng)的緩沖區(qū)位置累加器更新對(duì)每個(gè)SUM字段如cm-sales-this-ytd執(zhí)行ADD cm-sales-this-ytd TO sum-cm-sales-this-ytd物理輸出調(diào)用底層WRITE系統(tǒng)調(diào)用將整行緩沖區(qū)寫入salesrpt文件關(guān)鍵點(diǎn)在于GENERATE的執(zhí)行結(jié)果嚴(yán)格依賴當(dāng)前l(fā)ine-counter值。若你在GENERATE前手動(dòng)ADD 10 TO line-counter下一行將從第 11 行開始輸出破壞頁布局。GENERATE是唯一被允許修改line-counter的語句——其他任何ADD/SUBTRACT都是危險(xiǎn)操作。3.3TERMINATE rep從ACTIVE態(tài)躍遷至TERMINATED態(tài)輸出尾部并封存狀態(tài)terminate rep.執(zhí)行此語句編譯器生成代碼輸出REPORT FOOTING如report-end組輸出CONTROL FOOTING FINAL如detail-foot組將report-status設(shè)為TERMINATED禁止后續(xù)任何GENERATE若在TERMINATE后再調(diào)用GENERATE運(yùn)行時(shí)庫會(huì)檢測到report-status TERMINATED拋出INVALID REPORT OPERATION異常具體錯(cuò)誤碼取決于 COBOL 實(shí)現(xiàn)如 Micro Focus 為RT012提示TERMINATE不關(guān)閉文件。CLOSE salesrpt必須顯式調(diào)用且應(yīng)在TERMINATE之后。若先CLOSE后TERMINATETERMINATE將因文件不可寫而失敗。3.4 狀態(tài)機(jī)圖譜三態(tài)躍遷與非法路徑當(dāng)前狀態(tài)允許操作目標(biāo)狀態(tài)合法性說明UNINITIALIZEDINITIATE repINITIALIZED?初始狀態(tài)INITIATE是唯一入口INITIALIZEDGENERATE xxxACTIVE?首次生成明細(xì)行ACTIVEGENERATE xxxACTIVE?持續(xù)生成明細(xì)行ACTIVETERMINATE repTERMINATED?正常結(jié)束INITIALIZEDTERMINATE repTERMINATED??允許但不輸出CONTROL FOOTING因無明細(xì)行TERMINATEDGENERATE xxx/INITIATE—?運(yùn)行時(shí)錯(cuò)誤狀態(tài)機(jī)已鎖死這個(gè)狀態(tài)機(jī)設(shè)計(jì)使得 COBOL 報(bào)表天然具備“事務(wù)性”INITIATE是 beginTERMINATE是 commit中間所有GENERATE是原子操作。你無法部分回滾——要么全成功要么在非法操作時(shí)立即崩潰。4. 避坑COBOL 報(bào)表編制中 5 個(gè)血淚經(jīng)驗(yàn)總結(jié)——從頁頭錯(cuò)位到 SUM 值為零的底層原因COBOL 報(bào)表看似簡單但一旦出錯(cuò)調(diào)試難度極高沒有堆棧跟蹤沒有實(shí)時(shí)日志只有最終輸出文件的錯(cuò)亂行。以下是某開發(fā)者在維護(hù)某銀行核心賬務(wù)報(bào)表時(shí)踩過的 5 個(gè)典型坑每個(gè)都附帶現(xiàn)象、根本原因與可復(fù)現(xiàn)的修復(fù)方案。4.1 現(xiàn)象頁頭PAGE HEADING在第二頁才出現(xiàn)首頁只有空白或明細(xì)行原因PAGE HEADING的LINE值設(shè)置不當(dāng)導(dǎo)致編譯器判定首頁無需輸出。rpt0001中page-head定義為line 4而RD rep的HEADING是30PAGE LIMITS是66。編譯器認(rèn)為PAGE HEADING屬于頁內(nèi)布局但line 4小于HEADING 30故將其視為報(bào)表頭的一部分而報(bào)表頭rep-head已占滿前 30 行page-head被擠出首頁。解決將page-head的line改為line 1頁首第一行或確保其line值在HEADING范圍內(nèi)如line 30。更佳實(shí)踐PAGE HEADING應(yīng)始終從line 1開始由HEADING控制其顯示時(shí)機(jī)。4.2 現(xiàn)象SUM字段輸出全為0.00但源數(shù)據(jù)cm-sales-this-ytd明確有值原因SUM子句綁定的字段cm-sales-this-ytd與detail-line中SOURCE字段的PIC描述不一致。cm-sales-this-ytd定義為s9(5)v9(2)帶符號(hào)而detail-line中對(duì)應(yīng)SOURCE的PIC寫成了9(5)v9(2)無符號(hào)。COBOL 編譯器在生成累加代碼時(shí)因符號(hào)位不匹配將負(fù)數(shù)高位截?cái)鄬?dǎo)致累加器始終為 0。解決統(tǒng)一FILE SECTION和REPORT SECTION中的PIC描述。cm-sales-this-ytd為s9(5)v9(2)則detail-line中必須為pic s9(5)v9(2) source cm-sales-this-ytd。使用COMP-3等內(nèi)部格式時(shí)更要嚴(yán)格匹配。4.3 現(xiàn)象CONTROL FOOTING FINAL的合計(jì)行未輸出報(bào)表以明細(xì)行結(jié)尾原因TERMINATE rep被放置在PERFORM循環(huán)內(nèi)部且循環(huán)條件未覆蓋 EOF。rpt0001中PERFORM 200-prepare-sales-lines UNTIL custmast-eof-switch Y但200-prepare-sales-lines內(nèi)部PERFORM 210-read-customer-record在AT END時(shí)只置custmast-eof-switch Y未執(zhí)行220-print-customer-line。結(jié)果GENERATE detail-line在 EOF 前最后一次執(zhí)行后custmast-eof-switch仍為N循環(huán)繼續(xù)READ觸發(fā)AT ENDcustmast-eof-switch置Y但220-print-customer-line已跳過GENERATE未被執(zhí)行TERMINATE在無明細(xì)行狀態(tài)下執(zhí)行CONTROL FOOTING FINAL因無明細(xì)數(shù)據(jù)而不觸發(fā)。解決將TERMINATE移至循環(huán)外并確保GENERATE在 EOF 前至少執(zhí)行一次。標(biāo)準(zhǔn)模式perform 200-prepare-sales-lines until custmast-eof-switch Y terminate rep.且200-prepare-sales-lines必須保證即使READ失敗也要嘗試GENERATE但需加IF NOT custmast-eof-switch判斷。4.4 現(xiàn)象page-counter輸出為001而非1千位分隔符z,zzz,zzz.99顯示為000,001.00原因page-counter是編譯器隱式聲明的PIC 9(4)變量但PAGE HEADING中引用它時(shí)pic ZZ9的Z表示“零抑制”而page-counter初始值為0001ZZ9只抑制前導(dǎo)零保留001。Z不處理中間零0001格式化后仍是001。解決在PAGE HEADING中將pic ZZ9改為pic Z,ZZ9添加千位分隔符或使用FUNCTION NUMVAL轉(zhuǎn)換為數(shù)值再格式化。更直接page-counter本身是PIC 9(4)輸出時(shí)用pic ZZZ9三個(gè)Z抑制前導(dǎo)零9保證最后一位必顯則0001→1。4.5 現(xiàn)象REPORT FOOTINGreport-end輸出在頁中而非頁尾且覆蓋了明細(xì)行原因report-end定義為line 25 next page但next page是01級(jí)項(xiàng)的屬性表示“此組輸出后翻頁”。line 25是絕對(duì)行號(hào)而PAGE LIMITS 66下line 25在頁內(nèi)next page僅影響后續(xù)組不移動(dòng)本組位置。report-end被強(qiáng)制輸出在第 25 行覆蓋了本該在那里的明細(xì)行。解決REPORT FOOTING應(yīng)使用line plus n或line 66頁尾行等相對(duì)/絕對(duì)定位避免line n next page混用。正確寫法line 66頁最后一行或line 61footing 61指定的頁腳起始行并刪除next page。5. 為什么現(xiàn)代語言難以復(fù)刻 COBOL 報(bào)表引擎從編譯期綁定、隱式狀態(tài)到硬件親和性的設(shè)計(jì)取舍當(dāng)你用 Python pandas 寫df.to_excel(report.xlsx, indexFalse)或用 Java JasperReports 定義.jrxml模板時(shí)你其實(shí)在用運(yùn)行時(shí)解釋器或外部引擎模擬 COBOL 的報(bào)表能力。但二者有本質(zhì)鴻溝COBOL 報(bào)表是編譯期靜態(tài)綁定的硬件親和型子系統(tǒng)而現(xiàn)代方案是運(yùn)行時(shí)動(dòng)態(tài)綁定的通用計(jì)算框架。這個(gè)差異源于 1960 年代的設(shè)計(jì)哲學(xué)與今日的工程權(quán)衡。5.1 編譯期 vs 運(yùn)行時(shí)報(bào)表邏輯的固化程度決定性能與可靠性COBOL 編譯器在生成目標(biāo)代碼時(shí)已將PAGE LIMITS 66、SUM字段、LINE PLUS 1全部翻譯為機(jī)器指令中的立即數(shù)immediate values和跳轉(zhuǎn)地址。例如line-counter的遞增不是調(diào)用一個(gè)increment_line_counter()函數(shù)而是ADDL R1,1,R1假設(shè) R1 存line-counterIF line-counter 66是CMPL R1,66; BGE page_break_label。這意味著零運(yùn)行時(shí)開銷無函數(shù)調(diào)用棧、無反射、無模板解析。GENERATE的執(zhí)行速度接近裸WRITE。強(qiáng)一致性頁布局、求和邏輯、行號(hào)計(jì)數(shù)全部由同一份編譯產(chǎn)物保證不存在“模板版本與引擎版本不兼容”的問題??深A(yù)測性內(nèi)存占用、CPU 周期、I/O 次數(shù)均可在編譯時(shí)估算。這對(duì)銀行日終批處理至關(guān)重要——他們需要精確知道 100 萬條記錄的報(bào)表耗時(shí)是否在 5 分鐘 SLA 內(nèi)。反觀現(xiàn)代方案pandas 的to_excel需動(dòng)態(tài)構(gòu)建 Excel 結(jié)構(gòu)JasperReports 需加載.jrxml解析為 DOM 樹再遍歷渲染。每一次generate都涉及對(duì)象創(chuàng)建、哈希查找、字符串拼接。性能差距可達(dá) 100 倍且內(nèi)存占用隨數(shù)據(jù)量非線性增長。5.2 隱式狀態(tài) vs 顯式狀態(tài)COBOL 把“報(bào)表上下文”變成寄存器page-counter、line-counter、sum-cm-sales-this-ytd這些變量在 COBOL 程序員眼中是“隱式”的但對(duì)編譯器而言它們是硬編碼進(jìn)數(shù)據(jù)段的固定偏移量。INITIATE就是MOVE 1 TO 0x1234GENERATE就是ADD 1 TO 0x1234; ADD cm-sales-this-ytd TO 0x1238。這種設(shè)計(jì)犧牲了靈活性你無法在運(yùn)行時(shí)創(chuàng)建新SUM字段但贏得了確定性——沒有競態(tài)條件沒有 GC 停頓沒有指針失效。而在 Java 中JasperPrint對(duì)象持有所有狀態(tài)若多線程并發(fā)生成報(bào)表必須手動(dòng)同步Python 中DataFrame是引用對(duì)象copy()開銷巨大。5.3 硬件親和性為什么 COBOL 報(bào)表天生適合大型機(jī)與磁帶COBOL 誕生于 IBM System/360 時(shí)代其報(bào)表引擎深度適配硬件特性塊 I/O 優(yōu)化PAGE LIMITS 66直接對(duì)應(yīng) IBM 1403 打印機(jī)的 132 列 × 66 行物理頁。編譯器生成的代碼會(huì)將整頁緩沖區(qū)對(duì)齊到 4KB 邊界以匹配磁盤塊大小減少WRITE系統(tǒng)調(diào)用次數(shù)。字符集原生支持EBCDIC 編碼下PIC X(20)直接映射到 20 字節(jié)內(nèi)存無 UTF-8 轉(zhuǎn)碼開銷。z,zzz,zzz.99的格式化調(diào)用的是硬件固件中的PACKED DECIMAL轉(zhuǎn)換指令。無內(nèi)存管理所有報(bào)表緩沖區(qū)在WORKING-STORAGE中靜態(tài)分配無堆分配無碎片。REPORT SECTION的01項(xiàng)大小在編譯時(shí)確定rd rep的總尺寸可精確計(jì)算?,F(xiàn)代語言運(yùn)行在虛擬機(jī)或解釋器上必須抽象掉硬件細(xì)節(jié)。Java 的ByteBuffer、Python 的bytearray都是通用容器無法像 COBOL 那樣讓PIC s9(5)v9(2)直接對(duì)應(yīng)硬件的 packed decimal 寄存器。5.4 設(shè)計(jì)取舍的現(xiàn)實(shí)啟示何時(shí)該用“聲明式報(bào)表”何時(shí)該用“命令式拼接”我曾參與一個(gè)金融風(fēng)控報(bào)表項(xiàng)目初期用 Python Jinja2 模板生成 HTML 報(bào)表上線后發(fā)現(xiàn)當(dāng)數(shù)據(jù)量超 10 萬行生成時(shí)間從 2 秒飆升至 47 秒GC 占用 70% CPU。團(tuán)隊(duì)爭論是優(yōu)化模板還是換引擎。最終我們回歸本質(zhì)——畫出報(bào)表的物理布局66 行/頁固定列寬需跨頁合計(jì)。這不就是 COBOL 的PAGE LIMITS和SUM嗎我們用 Rust 重寫了核心引擎struct ReportConfig { page_lines: u16, sum_fields: VecFieldRef }編譯期生成專用代碼generate_row()變成無分支的memcpyadd循環(huán)。性能回到 1.8 秒內(nèi)存占用降為 1/5。這個(gè)教訓(xùn)讓我養(yǎng)成一個(gè)習(xí)慣每當(dāng)設(shè)計(jì)報(bào)表功能先問自己三個(gè)問題這份報(bào)表的物理頁尺寸是否固定是 → 考慮聲明式合計(jì)、分組邏輯是否在編譯時(shí)可知是 → 考慮編譯期綁定是否運(yùn)行在資源受限環(huán)境嵌入式、批處理集群是 → 優(yōu)先硬件親和設(shè)計(jì)如果三個(gè)答案都是“是”那么別猶豫——你的問題COBOL 在 1962 年就給出了最優(yōu)解。希望幫到你。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
亚洲黄色电影| 男人的天堂在线有码| 黄色大片一区二区密桃丝袜| 在线不欧美| 精品久久久亚洲AV成人网站| 俺去啦自拍| 性色av蜜臀av色欲aV| 午夜福利久久久噜久噜久久综合 | 精品999一区二区| 国产一区二区视频在线播放| 9ⅰ久久久天天| 国产一区免费午夜视频| 91九九九逼| 手机午夜电影神马久久| www.97在线| 亚洲深夜福利| 五月天激情小说网| 黑人猛交| 九九成人精品| 精品区国产区一区二区三区| 99久久久无码国产精品性啊聊| 好吊妞转入那个网| 天天射夜夜操| 欧美亚洲第1页| 日韩黄片影院| 国产精品天干天干综合网麻豆| 五月丁香六月激情| 亚洲五月丁香花狠狠干一区二区三区| 91成人无码| 天美传媒国产原创中文字幕亚洲欧美另类| 成人羞羞视频国产| 欧美A√综合网 | 欧美性爱无码一区二区三区| 国桃视频产巨乳精品一区二区在线| 福利操逼| 青青青草原| 亚洲欧美日韩综合在线尤物| 射久久| 精品久一区免费| 内射夫妻三片| 综合av影片| 国产无马视频| 欲色综合| 夜夜久久| 日本超碰在线国产一区| 国产家庭乱伦性爱视频| 91青青在线视频| 色播五月丁香| 中国一级操逼视频| 四虎在线视频| 欧美91精彩| 天天插天天操| 国产一区二区三区高清视频| 五月天亚洲网| 97资源超碰| 欧美Aⅴ| 蜜桃臀久久| 国语人妻精彩刺激| 日va操| 欧美色图综合网| 欧美日本久久精品一区| 亚洲美女自拍偷拍视频| 99色网| 天天射夜夜| 免费看日本操逼视频| 欧美欧美啪啪视频| 91久久精品美女高潮喷水| 91狠婷| 岛国黄色短视频| 91亚洲欧美激情| 一区=区三区视频| 中文字幕 国产 精品| w w w.久久精品| 蜜臀无码一区二区| 熟啊v色欧美热| av天堂5| 欧美日韩大香蕉| 日韩人人精品| 麻豆AV96熟妇人妻| 操操AV电影| 伊人五月天激情| 超碰九7免费| 伦理日韩国产久久| 99re69综合| 色五月综合| 一级片在线观看高清无码| 欧美春色| 久久精品六区| 久久天堂网| 色狠人在线99| 成人熟女视频一区二区三区| 久久久久婷婷| 色噜噜人妻丝袜a∨先锋影| 91精片| 欧美96交| 2026国产精品视频| www.91欧美| 欧美一级三级| 国产小u女在线观看| av网站在线看| 日本媚薬中文字幕在线| 无码人妻系列少妇| n1038 一二三区| 性爱综合网| 在线国产福利网址导航| 美女诱惑久久| 久久中文字幕人妻熟av女蜜柚| 久久偷拍人| 99在线精品视频| 亚洲码专区| 久久天天艹| 蜜臀99久久精品久久久久| 强奸熟女一区二区三区| 国产人妻精品一区二区三区秋霞| 大香蕉综合久久| 嗯嗯啊啊操死我| 丁香九月激情啪| 国产AV久久野战精品| 天天草天天日| 日韩免费在线观看不卡| 91老女人| 五月天婷婷在线看| 亚洲熟女乱色一区二区三区| 久久天堂网| 国产精品探花色| 亚洲欧洲成人在线电影| 乱伦1色页| 精品欧美老熟女一二区| 亚洲欧美黄| 这里都是精品| 97色网| 精品78| 久久久久夜夜夜夜| 97超碰超碰| 熟女熟妇伦久久影院毛片一区二区| 九九九九九九九九九九精品视频| 清清草影| 91精品婷婷国产综合久久| 欧美久久久| 国偷自 一区二区| 欧洲亚洲综合| 欧美性夜| 91香蕉视频在线观看免费| 国产精品亚洲天堂网址| 丰满搜索结果 -第18页- 久久高清无码 | 综合熟女| 亚洲欧洲偷拍一区| 五月天激情国产综合婷婷婷| 亚洲另类综合欧美| 欧美成人黄网色网站| 人人透人人操| 男人天堂2012| 精产国品一区二三产品| 96免费视频在线| 热的中文 热的有码 热的国产| 人妻无码久久一区二区三区免费| 成人精品久久| 电家庭影院午夜69久久夜色精品国产69乱| 国模无码人体一区二区三| 欧美成熟性爱精品| 人妻日日干| 亚洲日韩美国人妻| 99国产天美| 久久伊人亚洲AV无码网站| 久久精品国产精品亚洲艾通辽熟妇 | 天天日少妇逼AV| 激情综合97| 午夜成人福利影视| 国产又大又粗又长视频在线| 精品二999| 97射欧美| 青青在线视频日韩欧美| 国产亚洲日韩在线三区黑人| 亚洲一区二区中文字幕| 欧美毛片在线网| 成人日韩中文字幕| 亚洲蜜臀精品视频久久| 熟女高潮精品一区二区| 97综合久久| 自拍偷拍 高清无码| 精品一区二区成人| 九九九九久久久| 美女97超碰| 亚洲在钱| 亚洲综合第一页| 欧美日韩*字幕一区| 国产人妖视频一区在线观看| 九九在线视频| 国产精品亚洲日韩骚欢乐谷最新地址发布页huanieguty性屋娱乐妖精视频 | 伊人伊人LD| 色97欧美| 日韩丰满熟妇| 涩爱AV在线| 亚洲宗合网| 大香蕉综合网| 午夜精品五区| 99久久无色码| 欧美 日韩第一性色| 亚洲无码国产探花在线观看| 欧美一级A片在线看视频性色| 人妻少妇色综合| 91在线美女| 男人的天堂在线| 久久久久久9| 久久久亚洲欧美综合| 色五月婷婷在线| 日韩视频小说在线观看 | 中国特猛少妇色xxx| 亚洲熟女乱色一区二区三区| 日本污ww视频网站| 熟女欧美日韩综合婷婷| 国产国产亚洲一二三久久| 欧美性爱免费短视频| 亚州情色j区| 日本亚欧爱爱| 国产精品久久久久中文字幕| 欧美色图片91| 国产精品网址| 色婷婷综合久久久久中文国产精品一区中文字幕,国产福利电影一区二区三区 | 91丝袜美女| 97超碰影音| 黑人精品XXX一区一二区| 成人国产精品三级A片| 亚洲色图欧美| 九九国产| 日韩性爱1级片视频| 精品无码一区二区| 亚洲资源站| 国产男女无套视频免费观看| 成人欧美日超碰| 9久在线视频只有精品| 97五月天| 欧美色图色综合| 久久久激情| 色偷偷超碰亚洲| 97在线免费| 伊人久久88国产女| 亚洲美女精品九九视频| 日本熟女中文| 亚洲色悠悠久久88| 亚洲精品人妻在线| 91国产在线精品| 无码区蜜乳| 成人老鸭窝人人在线视频| 麻豆成人AV| 久久国产乱子伦精品免费女人| 成年男人的天堂| 2017av无码免费无线播| 97 超碰 人人做 人人爱| 97视频免费在线观看| 男人的天堂2019AV| 91网站18| 日少妇亚洲版| 精品成人动漫一区二区| 少妇色综合| www熟女乱伦com| 亚洲另类久操网| 俄罗斯及免费在线看| 欧美乱色| 无码久久国产 | 日本欧美国内在线| 日日爱99| 看日韩美女二区三区免费操逼视频| 色97欧美| 超碰97精品在线| 国产精品999aaa| 97超碰色屌| 国产一区二区在线播放量| 欧美性暴力猛交XXXX | 日韩精品国产一区二区| 亚洲吊色| 一区二区三区激情在线观看| AV色女综合| 久久久久久性爱片| 日韩免费大片一级播放| 久久亚洲日韩熟女精品| 99爱在线视频| 国产精品96久久久久久| 熟女欧美日韩综合婷婷| 美国一区二区免费视频| 91九色丨风韵犹存| 亚洲AV无码久久精品蜜桃小说| 亚洲日韩美女中文字幕乱| 91高清欧美| 偷拍欧美激情| 国产精品无码av| 老熟乱一区二区三区四区| 色色色色色色色色色色色色色色综合| 久久中文字幕不卡人妻| 中文字幕免费看| 久久久中文| 日本熟女不卡视频| 综合大香蕉美。| 婷婷久草一区二区三区| 秋霞久久亚洲精品成人| 久久九九热| 人妻精品综合中文字幕在线| 国产69精品久久久久99尤物| 久久嫩草| 中文字幕人妻色偷偷久久皮| 开心五月婷婷| 亚欧国产无码精品在线| 国产辣妈在线视频福利| 91中文字幕在线观看| 日本99热| 中文字幕一区电影在线观看| 日韩性爱小视频| 丰满人妻一区| 亚州色图欧美| 久久久久久午夜男人的天堂| 手机在线人成免费视频| 欧美操人视频| 超碰99热中文字幕| 不卡超碰护士AV在线免费播放| se..亚洲欧美| 精品二区久久| 亚洲成人妻日韩在线| 天天操天天插| 日韩激情中文字幕有码| 日韩性爱视频在线免费观看 | 国产女性无套 免费观看| 特色a在线上| 好爽免费视频,| 久久精品一区| 国产后入精品| 午夜天堂精品久久久久91| 国产亚洲女v在线观看| 熟女人妻精品一区二区视频| 97中文字幕一区| 人妻黑丝袜电影| 天天爽夜夜欢视| 97人人草| 婷婷大香蕉| 免费中文在线| 国产熟女乱论| 91c色| 内射夫妻三片| 亚洲日韩电影| 亚洲精品91| 熟妇高潮精品一区二区三区下载| 欧美超碰9798| 97 亚洲 日韩 欧美 在线| 亚洲人妻av| 日韩乱伦视频| 国产男女无套视频免费观看| 久久精品中文字幕观看| 久久男人精品| 密乳AV免费观看| 欧美性暴力| 9久久久久| 欧美性性性| 殴美色网| 香蕉视频精品亚洲一区二区三区在线播| 日本一级不卡一二区| 天天日日本| 污到发麻的视频 国产| 黑操B| 啪啪啪综合网| 综精品久久久aaaa| 99.色网| 五月婷婷五月天| 九九亚洲视频| 色情综合| 99免费视频| 小泽玛利亚一二三| 精品人妻1237| 久久国产对白激情浪潮| 国产精品一区二区后入| 无卡一区=区| 大香蕉日亚洲日本亚大| 亚洲色棕合| 亚洲综合在线91| 国产午夜精品一区二区三区牛牛| 干B网| av毛片aaaaa免费看| 国产辣妈在线视频福利| 欧美高清色| 久久久96| 亚洲精品国产熟女| 激情接吻视频久久久久久| 亚洲Av无码成人精品国产| 99久久久久| 欧洲色| 夜夜高潮夜夜爽高清视频一 | 99久久com免费视频′| 97欧美精品综合| 1区2区3区中文字幕日韩| 久久久久久久六六| 人人操人人摸超碰| 强奸抽插av| 嫩草影院在线观看精品| 色婷婷久久| 中文字幕天天天天天| 日本男人插女人的逼黄色| 久久久久久久久国产| 超碰色97| 亚洲国产精品无码AV久久久| 国产AV无码AV| 亚洲精品国产熟女| 久久精品色欧美aⅴ一区二区| 欧美 色 亚洲| 久久久久久国产成人| 黄色区免费观看中文字幕| 日本人妻A片成人免费看片| 亚洲 图片 综合91| 国产精品制服丝袜中文字幕日韩一区二区三区 | 欧美日韩系列| 操国产逼| 国产成人自拍视频在线| 国产欧美美女免费观看视频| 色哟哟1区2区| 极品另类| 老司机深夜影院18未满| 久久久工口| 99精品伊人| 欧色网址| 亚一综合久久久久久久久久| 人妻日日夜夜精品| 青青草在线视频播放器| 白丝被操91| 九九亚洲视频| 天天天堂影视日韩亚洲91| 久久精品国产精品一区| 国产热RE99久久6国产精品首| 欧美日韩国第一区| 亚洲人妻精品一区二区| 探花熟女,姿勢到位,體驗感也到位| 亚洲av夫妻操穴网| 婷婷五月天色网| 大色综合| 婷婷99| 欧美性综合| 不卡av免费在线网址| 色播综合| 日本97久久| 欧美日韩国产一区二区小黄片大全| 十八禁啪啦拍视频无遮挡| 亚洲激情色片| 国产主播福利| 欧美性生活综合| 久久久禁| 一类av片在线看| 日韩精品三区四区| 国产精品视屏| 六十路日本| 美日韩在线不卡人妻| 国产精品白丝| 天天综合色电影| 午夜福利 成人 91| 曰韩精品视频一区二区| 久久伊人青青草| 起碰97| www.婷婷六月天| 天天舔日美女视频| 91色久| 久久9免费视频| 无码高清专| 97精品国产精品免费观看| 久久男人天堂| 色综合中文字幕不卡| 九九久久玖玖| 97久久资源| 亚洲日韩天堂| 最新一二三区视频| 国产精品99999| 亚洲第一页色| 国产成人亚洲精品无码最新在线| 九九九九九九亚洲| 久久人| 日韩三级视频一区二区三区| 一本久道久久综合狠狠爱一密臀精| 人人考人人摸人人干| 久久激情视频| 久久人妻精品| 97天天日| 欧美高清性猛交| 麻豆综合一区av| 99青青草国产视频| 亚欧无码线免费观看视频| 九九色影院| 99久久99九九99九九九| 青青草密桃在线播放| 亚洲色欧美| 99久久无色码| 思思热在线cao| 干美女人妻| 99热自拍| 国产精品999aaa| 久久嫩草国产成人一区| 国产91影院| 91五月天| 超碰成人免费| 97啪啪| 中文字幕-区二区三区四区视频中国| 一级@啪啪视频| 台湾佬中文娱乐网久久久久久久久久com| 麻豆国产视频精品观看| 欧美少妇第一页| 人妻啪| 中文字幕78| 免费一级a毛片久久久久久鸭绿欲| 免费亚洲国产精品久久一区| 大香蕉520| 国产女大学生AV| 亚洲区限制级| www.色婷婷.com| 另类小说欧美激情校园春色| 丝袜美腿诱惑亚洲欧美视频在线观看 | 肉丝中文无码高清| 人人爽天天爽| 8050午夜少妇无码| 99色网| 91亚洲丝袜| 久久久久久午夜男人的天堂| 26uuu性| 97ai亚洲| silk lablo在线观看一区二区| 国产97视频免费观看| 超碰久在线天天做| 少妇无码太爽| 亚洲五码一区二区三区| 国产精品不卡av免费在线观看| 人妻素股| 久综合网| 91肉片| 乱操9999| 美女啪欧美一区| 大香蕉啪啪啪| 性影在线视频| 91白虎| 99色骚| 亚洲 欧美 91| 色一色综合网| 中文字幕高清精品一区| 欧美熟妇精品黑人巨大91| 夜夜高潮夜夜爽| 插欧洲美女欧美精品| 1级黄色夫妻对换性交免费看| 欧美色图亚洲色,麻豆| 中国黑人三级片网站上区| 91社操逼| 都市久久精品激情亚洲| 性色亚洲| 综合亚洲网| 天天干人妻| 国产精品久久9| 国产一级片| 精品黑人一区二区| 中文字幕日韩人妻视频一区二区三区 | 97色97干| 91狠狠综合久久| 91黑丝操| 国产精品丝袜久久亚洲不卡| 激情婷婷五月天| 日韩成人大片在线观看| 免费在线观看国内色片网站网址| 精品视频在线观看| 丰满人妻一区二区三区免费| 91欧美www| 先锋音影AV| 欧美99| 六月丁香久久| 日韩在线观看中文字幕视频| 嫩呦国产一区二区三区AV| 亚洲一区二区三区在线激情| 黑人猛交| 一级黄色性爱裸体视频| 欧美热图99| 成人热久久精品| 大香蕉色网| 亚洲国产一区二区三区在线 | 岛国黄| 岛国片在线播放| 国产午夜精品理论片一二三区区| 无码精品久久久久久亚洲| 一区二区高清视频| 欧美日韩在线视频网站| 国产区日韩区在线观看| 狠狠躁伊人中文字幕| 亚洲欧洲日韩中文字幕一区| 欧美综合色图片| 久草精品在线| 欧美翘臀视频网站一区二区三区 | 欧美爱国产综合、| 伊人国产视频| 青青伊人久久| 91n免费处女| 亚欧美色图| 日本高清视频在线观看黄已三辽| 日韩AV噜噜噜一区二区三区四区| 亚洲色婷婷综合久久久久中文| 欧美春色| 九九九九九九九九九国产精品| 日本媚薬中文字幕在线| 亚洲精品久久久久毛片A片拉屎| 亚洲av青草久久一区二区| 操一操摸一摸| 日韩精品字幕| 久久91精品国产9丨久久分亭| 亚洲第一无码播放立川理惠| 日产狠狠干| 成人综合网 欧美| 色www精品视频在线观看| 色偷偷人人玩人人舔人人操人人摸人人爽 | 草B在线| 成人久久久| 成人无码在线超碰网| 国产无马视频| 精品久久一区二区三区四区五区| 啊啊啊啊啊操我视频| 色哟哟1区2区| 激情欧美97| 东京热男人的天堂| 无码日韩人妻av一| www.av在线观看| 婷婷五月激情综合| 亚洲欧美九九九| 肉丝无码中文高清| 日本女人久久久| 尤物黄色在线观看网站| 欧美婷婷| 撸撸成人在线视频| 欧美高清16| 99re这里只有精品9| 国产一区自拍欧美日韩| 国产无码一二三区| 欧美亚洲日本视频久久久| www.夜夜| 无码久| 色香综合| 中文字幕精品一区二区精| 天天插天天干| 久久久久大香青草精品综合| 97色综合中文网| 久这精品中文在线观看视频| 加勒比久久综合网高清| 天天操女人| 大香蕉日韩欧美| 98人妻精品一区二区色欲| 人妻一区二区三区视频| 另类天堂| 久久成人午夜狠狠| 天天射天天操天天干天天吃2018 | 女沟厕偷窥piss小便| 91动漫操逼视频| 红桃视频高潮| 欧美日韩亚洲天堂| 狠狠色噜噜狠狠狠狠狠色综合久久| 成年女人一区| 91麻豆天美国产欧美高潮| 翔田千里一区二区三区奶水| 久久极品伊人| 熟女高潮精品一区二区| 国产日韩欧美中文在线播放| 色av中文字| 神马久久免费电影观看| 欧美性第一页| 性站| 久久久久久加勒比| 五月天玖玖资源站| 91爱看| 老熟女乱伦片| 日本特黄f c2| 国产国产亚洲一二三久久| 色官网色综合| 中 文字幕一区二区三四 五 区日 日 骚| 怡红院成人视频| 中国女人内射6XXXXX| 久久五月份| 97K超碰在线| 妺妺跟我一起洗澡没忍住| 都市激情人妻一区二区青青操视频| 欧美后入| 亚洲青青青视频在线| 另类专区加勒比| 国产精品久久久久久久AV大片| 极品五月天噜噜| 少妇精品久久| 亚洲图片偷拍视频区| 中文字幕欧美日本乱码一线二线| 377p欧洲日本亚洲大胆| 97色妞| 日本伦乱九九九综合| 超碰久热| 4虎在线观看| 丁香五月综合| 久久精品国产97欧美精品亚洲| 大香蕉www.超碰| 午夜精品久久久99| 国产精品日韩在线一区| 中文字幕av久久爽Av| 伊人操你| 美腿丝袜高跟网免费视频免费视频| 亚洲国产精品成人综合| 97日视频| 国产精品麻豆视频网站| 久久九九一区二区三区成人| 国产亚洲深夜激情| 四虎在线播放| 美国aaaaa一级黄片| 操人妻逼91| 欧美一级久久久久久久大片动画| 国产妇女精品视频青青草| 伦伦成年午夜免费视频| 97天天插| 人人操av| 精品国产Av无码久久久亚洲| 啊啊啊用力在线观看| 婷婷av在线中文字幕| 日韩女优中文字幕| 中国特猛少妇色xxx| 97九色人妻| 欧美性生活男人的天堂| 欧美激情色婷婷花野真衣一区二区| 无码操逼网| 综合大香蕉美。| 亚洲综合九九| 伊人麻豆传媒| 在线 亚洲 网爆 自拍| 日韩在线一区高清在线| 亚洲色图片区| 国产乱婷婷精品二区三区| 麻豆天美91| 亚洲情色在线| 综合一区中亚洲国产成人综合精品| 偷拍盗拍亚洲色图图片| 在线天堂999| 嗯啊抽插大香蕉网页| 日韩本不卡视频在线观看| 在线日韩视频| 乱操乱伦AV| 欧美韩国你懂得在线 | 久久欧美1卡2卡3| 天天操夜夜操狠很操| 男人天堂毛片| www.婷婷五月天| 婷婷干黄色| 9九九国产| 久久熟女人| 欧美操逼熟女| 啊啊啊好多水| 性站| 永久免费发布性爱网| 精品无码一区二区三区| 色综合中文字幕不卡| 人妻81p| 热99re69精品8在线播放| 天美传媒在线一区| 国产女人高潮嗷嗷嗷叫小说| 亚洲综合贴图91| 午夜精品一区二区三区三上悠亚| 911av网站免费观看| 五十路一区无码| 久久久久一本一区二区青青蜜月| 亚洲导航深夜福利| 99热| 999热日韩精品| 欧美夜色| www.色99| AV不卡在线| 日韩欧美女求操每天更新| 久久一二三四五六七八九区区| 日本在线一二| a级成人毛片免费视频高清| 久久高潮妇女视频| 日韩人妻丝袜美腿中文| 欧美熟女激情| 亚洲天堂综合AV| 亚洲欧美首页| 亚洲综合一| 九月AV| 女色视频社区| 操美女高潮抽搐白浆| 搞中出久久| 久久久9999| 97网址97| 男人的天堂,欧美亚洲另类国产日韩,日本高清一区二区 | 人、人、摸,人、人、草| 久久丁香久草综合网| 99亚洲精品| 日va操| 中文字幕午夜精品久久久| 国产精品干干干| 美美91成人国产精品欧美精品久久久久久久| AA特级绝黄| 岛国黄片网站| 性天堂| 大逼色网站| 综合熟妇一区二区三区| 日韩情色视频| 五月丁香亭亭| 99视频内射三四| 国内自拍 日韩激情 99| 免费簧片在线观看| 天天综合网网欲色| 美女久久久久久久久久久| 97精品一区二区视频在线观看| 青青草久草AV| 人妻黑丝袜电影| 国产丰满熟夫69mpp| 又大又黄国产| 天天操女人| 日日噜噜夜夜狠狠视频无| 88xx成人精品视频| 精品人妻免费观看| 久96热在线观看视频| 性色AV网站| 牛牛AV人人夜夜澡人人爽| dy888午夜老子影视达达兔| 国产精品诱惑| 另类图片天天影视| 亚洲久久久久| 欧美极品| 欧美在线电影| 白丝av| 天天草天天日| 国产亚洲深夜激情| 人人模人人看| 嫩草美女久久| 操迟操逼在巾线Fre看| 伊人91| 午夜精品久久一区二区| 亚洲在线网站| 久久无码成人| 国产精品视频白浆免费| 人人透人人操| 伊色综合天堂色97| 国产精品老熟女一区二区| 99综合网| 婷婷三区| 日欧美色| 亚洲诱惑| 97chaopenrihan| 亚洲在饯| 啊啊啊好多水| 国产兽交视频在线播放| 日韩激情小说一区二区| 日韩精品中文字幕二区| 综合熟女| 久插不卡| 亚洲天堂一二| 欧美色另类| 丰满人妻被猛烈进入中| 日韩操逼HD| 国产高潮AA片免费看| 亚码激情| 亚洲熟久久| 校园春色 亚洲| 精品国模无码| 国语对白在线播放视频| 中国亚洲呦女专区| 91女神在线视频| 中文字幕文字幕无码一区二区三区电影99| 久久久成人免费av电影| 校园春色 亚洲| 国产亚洲色婷婷久久99精品91 - 百度| 密乳无码| 亚洲操操操| 少妇三P| 色97欧美| 亚洲?V无码专区在线电影| 色久桃花影院在线观看| 69人妻精品一区二区绯色| 嗯啊不要在线观看嗯啊| 中文字幕视频免费| 91超碰碰在线| 干超碰碰熟女| 黄色视频特级毛片| 精品无码久久久| 天天在线91| 91色色网站| 狼狼色丁香久久婷婷综合五月| 激情五月综合| 素人无码中文字幕| h色99999| 久久99九九九九6666免费观看软件| 国产午夜在线观看视频| 婷婷五月成人| 超碰伊人在线| 日韩无码极品| 色综合久久888| 超碰亚洲欧美日韩无| 东北女人| 久久大黄片| 成人三一级一片aaa| 亚洲综合色男人网| 欧美淫乱视频| 秋霞久久亚洲精品成人| 屌妞视频久久久久久久久久久久| 人妻91少妇| 一区二区三区 日韩欧美| 夜夜高潮夜夜爽高清视频一| 女生看匆91网站| 久久五十路熟女人妻| 欧美 青青草| 97综合国产| 国产免费一区在线观看| 91欧美性| 久久精品一区二区一8| 自拍大香蕉乱插| 亚洲中文电影| 91一区二区三区蜜桃| 麻豆久久视频在线地址| 精品人妻高清麻豆av| 自怕偷自怕亚洲精品| 四虎永久在线精品免费网址| 天天综合网~91入口| 啪啪啪精品| 欧美最婬乱婬爆婬性视频 | 丰满岳乱妇一区二区三区| 欧美激情视频一区二区三区不卡| 超碰97导航| 国产AV精久久| 婷婷激情一区二区三区俺也去| 久操免费在线| 中文字幕在线播放2中文字幕在线观看2| 国产精品69久久久久孕妇欧美| 日韩免费大片一级播放| 老熟妇综合| 乱伦熟女专区| 日韩精品人妻系列无码天堂| 中日韩一区二区三区欧美| 婷婷视频网| 久久综合久色欧美综合狠狠| ,成人免费啪啪视频| 一区二区首页| 欧美黄业| 中文字幕在线观看视频www| 精品无码一区二区三区| 最新的亚洲无吗| 涩涩久久精品| 在线A日本| 精品美女久久一二三| 久久av成人无码免费| 嗯嗯啊啊啊啊轻点视频| 国产精品原创巨作?v网站| 国产成人主播| 乱伦一二三| 激情终合网| 波多野结衣先锋影音| 欧美色综合图片| 欧美一区二区日韩三区| 国产成自自拍在线观看| 亚洲天堂AV在线播放| 亚洲吊色| 日韩A优精品在线观看| 天天爱综合网| 国产精品美女在线一区| 亚洲一区制服诱惑| 视频分类 国内精品| 青娱乐蜜桃臀AV色婷| 波多野结衣先锋影音| 大香蕉日亚洲日本亚大| 99操视频| 啪啪综合网| 97日本超碰综合| 天天日天天干天天色| 亚洲AO在线| 国产曰批免费观看久久久| 97国产精品久久久久| 亚洲一区二区三区欧美日韩| 欧美日韩中文字幕不卡| 高凊专区人人操| 8x福利精品第一福利视频导航| 啊啊啊啊啊啊啊啊啊在线观看| 欧美视频中文字幕区| 色香av| 天天干天天日天天射黄色片| 亚洲精品白浆高清久久久久久| 啊啊啊久久久视频| 9久久精品| 国产无马在线| 久操| 区日韩亚洲乱码av电影| 亚洲精品性爱片| 91精品婷婷国产综合久久竹菊| av婷婷色婷婷色六月| 久草在线| 国产精彩女在线观看视频| 五月婷婷无码| 欧美亚洲| 玖玖草久草99蜜月一区二区三区| 色综合婷婷| 97精品一区二区视频| 久久只有精品一区二区三区| 国产日韩欧美中文在线播放| 四虎在线视频| 婷婷五月天伊人| 午夜操一操| 国产亚洲精品一区二区三区| 超碰偷拍| 婷婷亚洲中文字幕在线| 人人看欧美性爱| 东北女人被操| 超碰91在线| 老子午夜伦不卡影院| 深夜激情| 蜜臀久久久| 婷婷五月天补不补| 一牛影视成人片免费| 一区二区中文| 欧美大干日韩| 美中韩AV综合网| 人妻一区二区三区视频| 午夜成人福利影视| caoni国产亚洲av| 1769成人国产精品视频| 麻豆天天躁天天揉揉AV| 啊啊啊不要啊啊受不了了视频在线 | 羞答答AV中文字| 欧美日不卡| 色青青久久影视| 亚洲图片91| 天天情欲宗合网| 一区 欧美 日韩 麻豆| 国产 丝袜 欧美中文 另类| 欧美精品23| 精品黄色电影| 老师充足的奶水小说| 自拍偷拍2025在线观看| 吖在线不卡一区二区国产剧情| 97超碰护士| 欧美狠狠狠| 夜色97| 欧亚日韩三区| 天天做天天爱天天爽| 久久国产逼| 91麻豆天美| 精品人妻视频一区二区在线播放| 天天摸天天舔天天操| 超碰79人人乐| 日本色色网| 国岛片视频| 国产精品久久久久久久AV大片| 亚洲国产精品无码AV久久| 亚洲丨在线| 伊人久日| 东北女人av| 欧美第一页性| 五月婷婷六月丁香| 国产精品成人蜜臀AV在线| 中文精品一区二去| 91伊人久| 日欧操屄| 国产午夜福利电影免费在线观看 | 日韩综合无码色欲vv| 后入国产| 91性色| 天天综合网日韩| 超碰 欧美| 天天操熟妇| 97资源站国产精品| 青青操视频在线| 欧美综合网1| 久久精品视频一区三区小泽玛利亚| 午夜呻吟欧美| 亚洲一区二区三区麻豆传媒| 中文字幕视频一区视频二区| 人妻天天爽夜夜爽爽| 亚洲 欧美 中文 日韩超碰 | 91挑色欧美| 国产乱人妻精品入口| 中 文字幕一区二区三四 五 区日 日 骚| 欧美亚洲丝袜美女电影| 手机久操欧美综合色码| 久久久不卡区一区二区三区久久久| 91亚·色| 久久视网78| 最新加勒比丝袜在线| 久久一二三级一一一| 九九九九九九九九九九精品视频| 久噜噜| 日本天天干天天日一区| 亚洲日韩狠狠撸视频| 日日碰视频网| 亚州欧美另类| 9久久久久| 一区二区无码视频| 91无码人妻精品一区二区三区蜜桃| 久久久青草青青国产亚洲免观精品高清完整版_97久久综合区小说区图片区,国精品 | 久久国色天香香蕉| 亚洲精品国产精品乱码不卡| 欧美一区二区成人一卡| 中文字幕十五区| A一级色女| 99福利社| 色综合1991| 亭亭在线资源| 91四海无码日韩欧美| 久久久久久精| 丁香九月 婷婷| 欧美不卡二区| 色五月婷婷在线| av操操不卡| 国产亚洲综合欧美一区| 亚码激情| 久久伊人青青草| 啊啊啊 在线| 黄片免费日韩| 操操操五月天婷婷丁香影院| 国模艳艳啪啪一区| 日韩操人| 丁香五月性| 嗯嗯啊啊操死我| 亚洲无限观看| 97在线公开视频| 青青操国产夫妻| 亚洲一区操| 色婷网| 亚洲乱色视频一区、二区在线| 五月婷婷丁香| 97超碰无码网| 日日A∨| 亚洲区 欧美区| 蜜臀AV一区二区三区| 日韩免费看在线黄色片| 大香网站| 欧美日韩免费专区在线| 中文字幕天天天天天| 中文子幕一二三| 欧日韩一二三f区| A级片日韩欧美国产欧美视频精选观看| 三级激情网站| 女人被添高潮免费视频| 另类视频在线| 欧美猛交黑寡妇中文字幕| 久久夜色一区二区| 在线播放中文字幕| 91少妇人妻| 国产不卡免费在线视频| 91精品国产综合久久久蜜臀| 怡红院亚洲怡春院av| 日本性感人妻91| 婷婷丁香五月激情啪啪| 欧美在线色图| 78m啪啪啪| 亚洲 日韩 丝袜 熟女 变态| AV中文在线可看| 国产AV人人夜夜澡人人爽麻豆| 91在线免费精品视频| 日本视频一区二区三区| 91人妻爽爽人人做人人澡| 青操影院| 久久99国产精品| 97人妻免费中文字幕| 久久人人妻| K8久久久久| 日韩性爱毛片操骚逼| 91久久久久久久久久久| 欧美日韩青操| 人妻一区二区三区熟女| 日韩免费三级黄片电影| 亚洲丝袜色| 色九九九九九九| 欧美另类精品xxxx| www.色婷婷| 青青操视频在线| 思思热国产高清| 爽爽歪在线视频| 97干com|