亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

耐用的機器可讀符號體系及打印和閱讀符號的方法和設(shè)備的制作方法

文檔序號:6415683閱讀:267來源:國知局

專利名稱::耐用的機器可讀符號體系及打印和閱讀符號的方法和設(shè)備的制作方法
技術(shù)領(lǐng)域
:本發(fā)明涉及一種新的機器可讀符號體系及用于閱讀或打印該體系下的符號的設(shè)備和方法。條碼符號體系首先由Kermode在美國專利1,985,035中公開,并后來隨即由Young在二十世紀(jì)三十年代在轉(zhuǎn)讓給Westinghouse的美國專利2,020,925中加以擴充。這些早期符號體系通過生成多條低反射度的單寬元素或“條”并用高反射度元素或“空”將它們間隔從而打印符號。一個“元素”是一個條或空。這些早期符號體系及許多當(dāng)今使用的“條碼符號體系”可稱為“線性符號體系”,因給定符號中的數(shù)據(jù)沿一條軸或方向解碼。例如線性符號體系的符號體系將“數(shù)據(jù)字符”(例如人類可讀字符)編碼為“符號字符”,它們通常是條和空的間隔的并行排列,從而形成獨一的多組圖形以編碼特定數(shù)據(jù)字符?!皵?shù)據(jù)字符”不單包括人類可讀字符,也包括特定功能字符,例如啟、?;蛞莆蛔址?,它們提供一定的功能數(shù)據(jù)。每個在預(yù)定寬度內(nèi)的獨一的條、空組或圖形規(guī)定一個特定符號字符,也就是一個特定的數(shù)據(jù)字符或字符。有名的U.P.C.符號體系一般可描述為(7,2)“n,k碼”。一個“n,k碼”定義為一個符號體系,其中每個符號字符具有k個條和空,其總長度為“n”個單元長。因此,U.P.C.符號體系將每個符號字符編碼為兩條和兩空,每個符號字長為7個單元。一個“單元”是條形碼符號體系中測量的最窄正常寬度單位(一個單寬條或空)?!罢!敝柑囟▍?shù)所要求的值而不考慮打印錯誤等。在正常計數(shù)技術(shù)中,意識到在7個單元中有6個位置可出現(xiàn)轉(zhuǎn)換,而對于兩條兩空則有3個內(nèi)部轉(zhuǎn)換,這樣可以找出可能的符號字符數(shù)。因此,U.P.C。符號體系的獨一符號字符的數(shù)量就是6取3組合,這等于20。類似地,在碼128符號體系中,它是(11,3)符號體系,有252獨一符號字符可用(10取5)。稱為U.P.C.,EAN,碼11和Codabar的條碼符號體系都是條碼符號體系標(biāo)準(zhǔn),它們只支持?jǐn)?shù)字?jǐn)?shù)據(jù)字符和個別特定字符,例如“+”和“-”。U.P.C.符號體系既是條碼標(biāo)準(zhǔn),又是工業(yè)標(biāo)準(zhǔn),即它已被工業(yè)界采用于正常應(yīng)用中(消費商品)、條碼標(biāo)準(zhǔn)碼39是第一個開發(fā)的字母數(shù)字條碼符號體系標(biāo)準(zhǔn)。然而,它局限于43個字符。碼93是碼39的改進(jìn)。碼93是連續(xù)條碼符號體系,采用4個元素寬。每個碼93符號具有9個單元,它們可為黑也可為白(或為條,或為空)。碼93標(biāo)準(zhǔn)中的每個符號包含3條3空(6個元素),它的總長度為9個單元長。每符號具有9個單元和3條的碼93因此是(9,3)符號體系,它有56個可用字符(8取5)。為了邊至邊解碼的理由,碼93符號體系標(biāo)準(zhǔn)只定義了48個獨一符號,因此能在其字符集中定義47個字符加上一個啟/停碼。這47個字符包括數(shù)字字符0-9,字母字符A-Z,一些附加符號和4個移位碼。計算機工業(yè)使用其本身的字符編碼標(biāo)準(zhǔn),稱為美國信息交換標(biāo)準(zhǔn)碼(ASCII)。ASCII規(guī)定了一套包含128字符和符號的字符集。ASCII中每個字符由一個獨一的7位碼表示。由于碼39和碼93限用于少于50個字符,這些標(biāo)準(zhǔn)不適合于獨一地表示每個ASCII字符。然而碼93中的四個移位碼允許用此標(biāo)準(zhǔn)唯一地表示全部129個ASCII字符。一個缺點是需要一串兩個碼93符號來表示單個ASCII字符。因此,用于表示ASCII字符集中的字符的條碼標(biāo)記是用于表示碼93字符集中字符的標(biāo)記的兩倍長。開發(fā)了新的條碼符號體系例如碼128以編碼完整的ASCII字符集,然而這些標(biāo)準(zhǔn)具有一定弱點,包括需要移位碼或其它前置符號來表示某些字符。所有這些符號體系要求增多的處理時間和開銷以處理整個ASCII字符集。計算機工業(yè)的成長已超越ASCII字符集的限制。當(dāng)計算機市場成長以后,出現(xiàn)了需要以支持未由ASCII字符集定義的另外的語言。開發(fā)了新的字符集以容納有關(guān)語言中的字符族。最初7位ASCII字符集擴展為8位,從而提供附加的128字符或數(shù)據(jù)值。此附加的128數(shù)據(jù)集值(“上128”或“擴展ASCII”)可以表示在有關(guān)的拉丁系語言(即法語、德語、西班牙語等)中出現(xiàn)的附加字符。線性符號體系中唯一能將8位數(shù)據(jù)編碼的是碼128和“碼53”,后者被描述于本發(fā)明者的名為“使用耐用的啟/停字符和誤差檢測方案的具有全字符集的單寬條碼符號體系”的美國專利5,619,027中。碼128和碼53兩者都使用單或雙功能移位字符來編碼8位數(shù)據(jù),因此要求增多的處理時間和開銷,這是因為在編碼一個數(shù)據(jù)字符之前必須分析每個字節(jié)值。然而,當(dāng)計算機市場在國際上成長后,要求在字符集中包括更多語言。尤其是,亞洲市場要求一套字符集,可在計算機上使用并支持?jǐn)?shù)千個獨一字符。為獨一地定義每一個這樣的字符,需要一個16位編碼標(biāo)準(zhǔn)。最近開發(fā)了幾個16位編碼標(biāo)準(zhǔn),例如Unicode,J1SC-6226-1983和其它一些。Unicode字符編碼標(biāo)準(zhǔn)是一個字長度,均勻文本和字符編碼標(biāo)準(zhǔn)。Unicode標(biāo)準(zhǔn)可包括多至65,536個字符,現(xiàn)在已包含超過28,000個字符,映射了世界上的字母表,包括希臘文,希伯來文,拉丁文,日文,簡體漢字,朝鮮文和繁體漢字。Unicode標(biāo)準(zhǔn)是在ASCII字符集之上進(jìn)行模仿的。Unicode字符碼不論何種語言都是一致為16位長,所以不需要任何換碼序列或控制碼來指定任何語言中的任何字符。Unicode字符編碼方案完全同等地對待符號,字母字符和標(biāo)記字符,以使它們能同樣方便地和同時地用于不同計算機應(yīng)用中。當(dāng)引入新字母表或字符后,使用Unicode編碼字符以表示字符但不顯示或打印文本的計算機程序可保留不予改變。新的計算機操作系統(tǒng)開始支持這些全面的16位碼標(biāo)準(zhǔn),例如由華盛頓州Redmond市的微軟公司研制的WINDOWSNT。然而數(shù)據(jù)采集工業(yè)沒有跟上計算機工業(yè)的步伐?,F(xiàn)在尚無系統(tǒng)能容易地將16位計算機字符碼編碼為條碼符號。因此需要在數(shù)據(jù)采集工業(yè)中支持這些16位計算機字符標(biāo)準(zhǔn),對于條碼符號體系尤其如此。此外,當(dāng)用于編碼一長串?dāng)?shù)字或小寫字母字符時,大部分字母數(shù)字條碼符號體系的效率不高。例如,當(dāng)使用碼93編碼一串十進(jìn)制數(shù)字時,例如反映26個字母字符的26個條碼就不用。因此需要允許這些字母數(shù)字條碼符號體系更有效地表示長串?dāng)?shù)字。另外,大部分符號體系缺乏誤差校正特點。一個有名的符號體系,IPC符號體系標(biāo)示出另一個符號是否與IPC符號相鄰并且是否多少包括與IPC符號有關(guān)的數(shù)據(jù)。IPC符號體系的數(shù)據(jù)集內(nèi)的奇偶性排列標(biāo)示這類相鄰符號的存在。IPC符號體系是一種定寬數(shù)字符號體系,它用于均勻碼委員會(UCC)應(yīng)用中,例如與U.P.C.符號體系一起用。由于IPC符號體系是定寬的,在一個符號中只可編碼一定數(shù)量的字符。此外,只有數(shù)字?jǐn)?shù)據(jù)字符可在這類符號中編碼。其結(jié)果是IPC符號體系只限于少數(shù)數(shù)據(jù)采集應(yīng)用。本發(fā)明解決以上問題并提供額外優(yōu)點。在本發(fā)明一個實施例中,一組移位特征允許有效地解碼一串小寫字母字符,數(shù)字字符和其它小寫ASCII字符,例如對于一組十個這類小寫字母/數(shù)字字符,每個符號字符在10.8個單元中。在另一實施例中,可應(yīng)用一個誤差校正或特殊特征標(biāo)志來標(biāo)示符號中的誤差校正字符。特殊特征標(biāo)志字符位于符號中央,后隨之以消息長度標(biāo)示字符。在一個示例性實施例中,一個應(yīng)用誤差校正的符號包括5個誤差校正字符,它們可在符號內(nèi)校正兩個誤差或三個丟失。此外,可校正符號的起始和結(jié)尾部分,及符號可按一半來編碼。在另一實施例中,一個符號體系描述一個可均勻地用于任何字節(jié)值上的單字節(jié)編碼模式,從而避免將8位和16位編碼的復(fù)雜方法。在示例性實施例中,現(xiàn)有符號體系類似于碼93符號體系,因此符號字符只有9單元長。三個符號字符編碼兩個8位字節(jié)。因此一個字節(jié)要求大約13.5個單元而不論字節(jié)值如何。在示例性符號體系中允許進(jìn)一步減少用于編碼數(shù)據(jù)字符的單元數(shù),例如數(shù)字串或基碼93數(shù)據(jù)字符串。在本發(fā)明一個實施例中,將擴充的通道解釋(ECI)數(shù)正式地編碼。其結(jié)果是可連接閱讀器的主機系統(tǒng)可在世界上任何地方獨一地將編碼消息解碼而不論主機所用基礎(chǔ)字符集或應(yīng)用如何。在示例性符號體系中16位字符由三個字符表示,而在另一模式中,兩個8位字節(jié)由三個符號字符表示。通過用三個符號字符表示兩個8位字節(jié),可將擴充的ASCII數(shù)據(jù)字符以及其它相對地小的國際字符集例如ISO系列8851-1-8859-9正式地加以編碼。廣義而言,本發(fā)明實施一種具有多個符號字符的機器可讀符號體系。機器可讀符號體系包括一個誤差校正標(biāo)志符號字符,它標(biāo)示在一組符號字符中出現(xiàn)至少一個誤差校正符號字符。此外,本發(fā)明實施一種具有多個符號字符的機器可讀符號體系,其中一組符號字符組成一個可打印符號。機器可讀符號體系包括一個用于標(biāo)示可打印符號中第一位置處的第一功能的特殊特征標(biāo)志符號字符。特殊特征標(biāo)志符號標(biāo)示可打印符號中第二位置處的第二功能。此外,符號體系可應(yīng)用一組碼93啟和停字符和兩個獨一的啟和停字符的組合來標(biāo)識一個其字符值超出標(biāo)準(zhǔn)碼93符號體系中的字符值的符號,具有誤差校正的符號和具有通常位于現(xiàn)有符號鄰近的相關(guān)或相伴符號的符號。本發(fā)明的其它實施例如方面還實施用于打印和讀取機器可讀符號的方法和設(shè)備。圖1是具有條碼符號字符的標(biāo)記的例子,它具有在本發(fā)明示例性實施例中打印或讀取人類可讀字符;圖2是本發(fā)明的示例性符號體系中顯示符號值和相關(guān)的符號字符和數(shù)據(jù)字符的表;圖3顯示示例性符號字符格式;圖4顯示圖1的條碼符號,每個符號字符用其相關(guān)數(shù)據(jù)字符標(biāo)識;圖5是用于顯示在圖2符號體系中的可編碼的全ASCII數(shù)據(jù)字符的表;圖6是本發(fā)明的條碼符號打印設(shè)備的框圖;圖7是用于打印示例性實施例中條碼符號的圖6打印設(shè)備所完成基本步驟的示例性流程圖;圖8是本發(fā)明的條碼符號讀取設(shè)備的框圖9是用于讀取示例性實施例中條碼符號的圖8的讀取設(shè)備所完成基本步驟的流程圖;圖10是應(yīng)用誤差校正字符的93i符號的原理圖;圖11是具有鄰近相伴符號的93i符號的原理圖;圖12是一個93i符號和一個相伴兩維符號的框圖;圖13是一個93i符號和一個相伴RF標(biāo)記的框圖;圖14顯示帶有位于93i符號之上的相伴PDF417符號的93i符號;及圖15顯示帶有位于93i符號之右的相伴碼49的93i符號。如此處通常所用的,應(yīng)用下列定義“數(shù)據(jù)字符”系指人類可讀字符,包括符號、數(shù)字字符、字母字符和標(biāo)記字符以及不可讀數(shù)據(jù),例如功能碼、移位碼等;“數(shù)字串”系指數(shù)字字符序列,通常是十進(jìn)制數(shù);“字符碼”系指一個碼,通常為數(shù)字,它指一套字符碼和相應(yīng)的數(shù)據(jù)字符的集合例如ASCII中的一個數(shù)據(jù)字符;其中“8位碼”系指對應(yīng)于ASCII標(biāo)準(zhǔn)中一個數(shù)據(jù)字符的一個擴充ASCII碼;及“16位碼”或“16位字符碼”系指16位字符編碼標(biāo)準(zhǔn)例如Unicode中的一個數(shù)據(jù)字符的十六進(jìn)制或十進(jìn)制表示;“條碼符號體系”系指用于獨一地表示一套數(shù)據(jù)字符的一套機器可讀符號字符;“符號值”系指表示條碼符號體系中一個數(shù)據(jù)字符的一個碼例如順序號;“符號字符”系指用于表示特定數(shù)據(jù)字符的在條碼符號體系中使用的獨一幾何形狀或條與空圖形;“條碼標(biāo)準(zhǔn)”系指數(shù)據(jù)集合應(yīng)用所承認(rèn)和經(jīng)常使用的一種條碼符號體系(例如碼128,碼93);以及“計數(shù)”系指讀取對應(yīng)于條碼符號體系中一個數(shù)據(jù)字符的一個符號字符時所產(chǎn)生的獨一的電信號集合。例如,在16位字符編碼標(biāo)準(zhǔn)Unicode中,數(shù)據(jù)字符“A”由16進(jìn)制的16位碼“0041”和十進(jìn)制“65”表示。在條碼符號體系碼93中數(shù)據(jù)字符“A”的符號值為“10”。碼93中的符號值10對應(yīng)于具有雙單元寬條圖形的符號字符及其后隨之以單單元寬的空,單單元寬的條,單單元寬的空,單單元寬的條和三單元寬的空。與此符號的打印有關(guān)的計數(shù)一般對每種打印機是獨一的,對于熱打印機而言,計數(shù)表示條與空之間轉(zhuǎn)換的時間間隔,后者當(dāng)熱敏紙張經(jīng)過打印機加熱元件時用于恰當(dāng)?shù)丶罴訜嵩臅r間,其中條的位置垂直于標(biāo)記通過打印機的方向。另選方案是,當(dāng)條與標(biāo)記通過打印機的方向平行時,計數(shù)可標(biāo)示應(yīng)激勵哪個點或哪個加熱元件。本發(fā)明一個實施例中一種此處稱為“93i”的新的條碼或線性符號體系有效地編碼數(shù)據(jù)的字節(jié)和字以獨一地表示任何16位字符碼中的每個16位碼,將ECI字符編碼以及提供此處詳細(xì)描述的附加特征。圖1顯示在93i符號體系中打印或讀取的標(biāo)記101的例子。如圖1中所示,標(biāo)記101包括一串將數(shù)據(jù)字符編碼的條碼符號,以及打印于其下的相應(yīng)的人類可讀字符。93i符號體系類似于碼93。結(jié)果是,93i符號體系編碼數(shù)字,字母數(shù)字和全128個ASCII字符。此外,93i符號體系編碼擴充的ASCII字符及所有國際字符集,例如由16位字符碼表示的字符。93i符號體系是連續(xù)的,所采用的符號結(jié)構(gòu)如下面所述地具有每符號6個元素,3條和3空。93i符號體系中的字符不能自我檢驗,并且符號長度可變。93i符號體系應(yīng)用兩個符號檢驗字符或可選地采用誤差校正字符。93i符號體系采用等效的37單元為非數(shù)據(jù)開銷。重要的是93i符號體系允許如下的數(shù)據(jù)字符密度每個數(shù)字位5.4個單元,每個字母數(shù)字?jǐn)?shù)據(jù)的符號字符9個單元,全ASCII和擴充ASCII(如ISO88598位單字節(jié)編碼圖形字符集標(biāo)準(zhǔn)所定義)13.5個單元,直至小寫字母字符串和其它小寫ASCII字符串10.5個單元及每個亞洲或16位字符碼字符27個單元。此外,現(xiàn)有符號體系支持?jǐn)U充通道解釋(ECI)協(xié)議(下面將說明),并與現(xiàn)有碼93符號體系安全兼容。圖2顯示93i符號體系中每個數(shù)據(jù)字符的符號字符賦值。圖2中“值”欄表示每個符號字符的符號值。如此處所述,符號值不但用于計算檢驗或誤差校正字符,而且用于不同數(shù)據(jù)壓縮方法。圖2中的“字符”欄列舉每個符號字符的交替條與空圖形,其中“1”對應(yīng)于一個單元,“2”對應(yīng)于兩個單元等。每個字符從條開始。圖2中的“數(shù)據(jù)”欄表示對應(yīng)于每個符號字符的基本數(shù)據(jù)字符或符號字符的功能。如圖2中所示,符號值00-46和它們相應(yīng)的符號字符和數(shù)據(jù)字符與碼93符號體系中相應(yīng)的符號值,符號字符和數(shù)據(jù)字符以及啟和停符號字符相匹配。此外,93i符號體系采用獨一的啟和停字符啟字符包括條空圖形2,1,3,1,1,1及停字符包括相同的條空圖形,但還包括附加的雙寬條于尾部,即2,1,3,1,1,1,2。這種交替啟和停字符使該符號體系區(qū)別于碼93符號體系,并在字符的開始和末尾提供具有寬元素的字符,以便于模糊解碼??赡芨鼮橹匾氖牵瑑蓚€可用的啟和停字符允許可用四種不同類型符號成為有效。第一有效符號類型分別使用碼93啟和停字符開始和結(jié)尾,及包括所有其字符值小于47的符號字符,并且每個移位字符之后有一個在數(shù)據(jù)字符集A,B,…,Z內(nèi)的字符值。第二個有效符號類型用碼93啟字符開始,或包括至少一個大于46的字符值或包括至少一個移位字符并后隨之以一個小于47而又不是A,B,…,Z的值的字符,例如一個碼93中未定義的字符串,然后用93i停字符結(jié)尾。第三個有效符號類型用93i啟字符開始,并包含一個特殊特征標(biāo)志(下面將描述),后者位于能表示93i符號體系中任何數(shù)據(jù)字符組合的符號字符的中央,然后用碼93停字符結(jié)尾。第三個有效符號是一個93i誤差校正的符號。第四個有效符號類型用93i啟和停字符開始和結(jié)尾并包含任何數(shù)據(jù)字符組合,但此啟/停字符組合標(biāo)示相伴符號的存在。例如,一個具有93i啟和停字符的93i符號向閱讀器標(biāo)示一個可以行掃描的符號位于93i符號鄰近處,并通常包括與93i符號內(nèi)編碼數(shù)據(jù)相關(guān)的編碼數(shù)據(jù)。下面將更徹底地說明相伴符號的使用。下面的表歸納了93i符號體系中的啟/停字符組合。下表中“C93”系指碼93啟/停字符,而“EC”代表誤差校正。啟/停字符類型主要特征C93/C93碼93(沒有其值>46的字符或非法移位組合)C93/93i93i(具有93i停和至少一個其它93i特有特征)93i/C93帶EC的93i(具有93i啟和始終具有值為52的字符)93i/93i帶相伴的93i(具有至少兩個93i字符用作啟和停)注意到相鄰標(biāo)記標(biāo)志特征(下面將說明)可與任何93i啟/停字符組合使用。所有此處未曾顯式定義的字符組合或模式值都是無效的,將使解碼操作失敗。通過使用93i符號體系中的獨一啟和停字符以及具有超出碼93符號體系中值的字符值的字符,需要至少兩個圖形變化來將93i符號與標(biāo)準(zhǔn)碼93符號混同起來。例如,一個93i啟或停字符和一個其值大于46的字符應(yīng)解釋為碼93啟/停字符和一個其值小于46的字符。此外,待解釋的93i符號的檢驗字符一般誤解釋為標(biāo)準(zhǔn)碼93符號。不像碼93符號體系,93i符號體系采用53個符號值而不是碼93符號體系中采用的47個。具體地說,93i符號體系增加符號值47-52和兩個啟動字符。用條空條圖形2,1,3,1,1,1開始的第一啟字符標(biāo)示該符號為93i符號,因此可包括符號值47-52。通過采用在93i啟字符中的由單寬空隔開的雙寬條,閱讀器能通過確定該單寬空是否能辨認(rèn)而確定該符號是否清晰。如閱讀器在93i啟字符中標(biāo)識一個五寬條,則由于單寬空未被辨認(rèn)而閱讀器確定該符號大概是模糊的。另一個啟字符與碼93符號體系的啟字符完全相同,并標(biāo)示該符號只用有效碼93符號字符編碼。對于只采用大寫字母字符的均勻混合的字母數(shù)字消息,碼93符號體系提供最有效的字符密度,因此對這類消息是優(yōu)選的。如圖3中所示,93i符號體系中每個符號字符的符號字符結(jié)構(gòu)采用9個單元中的三條和三空。每個條或空是1,2,3或4個單元寬。如在碼93符號體系中一樣,93i符號體系采用其最小寬度等于X維十倍的前靜區(qū)(QZ),兩個啟符號字符中的一個,一個或多個符號字符編碼數(shù)據(jù)字符,兩個符號檢驗符號(稱為“C”和“K”),一個停符號字符和一個尾靜區(qū)。一個符號可包括一個誤差校正或特殊功能標(biāo)志和在符號中央的消息長度標(biāo)示,5個誤差校正字符,如下面討論的。圖4顯示標(biāo)符101中的符號字符(沒有誤差校正),它被語法分析為個別符號字符連同每個符號字符的相應(yīng)數(shù)據(jù)字符,這些符號字符由每個符號字符間的短垂線表示。如上所述,每個93i符號包含直接位于停符號字符之前的兩個檢驗字符。對于符號中的所有符號值,檢驗算法采用模53和。如同碼93符號體系中一樣,根據(jù)符號值與加權(quán)序列的乘積的按模計算和來計算檢驗字符“C”,如圖2中所示。加權(quán)序列從右至左(從停符號字符至啟符號字符),自直接在前的字符開始,是重復(fù)序列1,2,3,…20,1,2,3,…20,1,2…。根據(jù)符號值與另一不同加權(quán)序列的乘積的按模計算和產(chǎn)生檢驗字符“K”,其中加權(quán)序列自右至左從檢驗字符“C”開始,是重復(fù)序列1,2,3,…15,1,2,3,…15,1,2,…。如在碼93符號體系中一樣,啟和停符號字符不包括在檢驗字符計算之中。例如,考慮圖4的符號,數(shù)據(jù)字符自左至右是9,3,i,[ECI16],{30908}?!癧ECI16]”系指ECI值000016,而“{30908}”是亞洲字符,具有Unicode標(biāo)準(zhǔn)中的16位碼30908(近似地發(fā)音如“MA”)。如此處通常使用的,單獨使用的詞“符號”系指一群符號字符,例如標(biāo)符101中所示的。數(shù)字?jǐn)?shù)據(jù)字符“9”和“3”直接編碼,而數(shù)據(jù)字符“i”必須用移位字符編碼(如下面說明的)。如此處常用的,單獨使用的詞“字符”系指一個數(shù)據(jù)字符或它的相應(yīng)符號值。[ECI16]數(shù)據(jù)字符由兩個符號字符形成,而亞洲字符[30908]采用下面將討論的字模式。簡而言之,值30908用公式(16*432)+(30*43)+34編碼。結(jié)果是,所得的用于編碼該數(shù)據(jù)的符號字符串的符號值是[46][18][47][16][50][16][30][34]。采用上述檢驗字符算法和合適的加權(quán),檢驗字符“C”的計算自右至左如下“C”=(10×9+9×3+8×46+7×18+6×47+5×16+4×50+3×16+2×30+34)mod53=1315mod53=43類似地,使用包括“C”的加權(quán)系數(shù)來計算檢驗字符“K”“K”=(11×9+10×3+9×46+8×18+7×47+6×16+5×50+4×16+3×30+2×34+43)mod53=1627mod53=37如上所述,93i符號體系采用數(shù)個特殊字符。如碼93符號體系一樣,93i符號體系采用四個移位字符[S1]-[S4],具有符號值43-46,如圖2中所示。符號值10-35之前的移位字符表示單個全ASCII數(shù)據(jù)字符,如圖5的表中所示。圖5第二欄中字符組合[S3]A至[S3]Z是有效的,并可在93i符號體系中用于產(chǎn)生與所標(biāo)單字符相關(guān)的ASCII字符。例如,數(shù)據(jù)字符“Q”可由單符號值[81]表示,或可由兩個符號值[S3][81]表示。[S2]與X,Y或Z的字符對都編碼ASCII值DEL(刪除)。當(dāng)一個移位字符[S1]-[S4]后隨一個0至9或36至46的符號值時,可根據(jù)特定初始移位字符標(biāo)示3至23個被移位字符的一個連續(xù)串或一組。如圖5中所示,字符空格(SP),$,%,+,-,·,/,和數(shù)字位0-9是不移位的,也不用于提供任何移位的字符。因此,其字符值為0-9和36-46的這類字符可用于提供附加功能,即組移位功能。下面表中標(biāo)示一個組內(nèi)移位的了符的數(shù)量表1</tables>其中“[S?]”對應(yīng)于移位字符[S1]-[S4]中的一個。換言之,四個移位字符[S1]-[S4]中的一個后隨一個符號值0-9或36-46為預(yù)定數(shù)量的隨后字符提供一個鎖定功能,根據(jù)初始移位字符,隨后字符鎖定于它們的相應(yīng)移位的值。例如,如編碼數(shù)據(jù)“Modulo53”,則使用93i字符“M[S4][S2]ODULO[SP]53”,它對應(yīng)于符號值“22,46,02,24,13,30,21,24,38,05和03”。一組移位的字符中單個移位的字符可(1)或用于根據(jù)前面的移位字符將一個隨后字符移位,(2)或如字符當(dāng)前被移位入由初始移位字符標(biāo)示的同一集中,則用于將一個隨后字符移位至基本93i字符集。移位的字符串中的移位字符和一個隨后字符這兩者都包括于表1的組長度中?!耙莆坏拇焙汀耙莆坏淖址被蛑敢淮?dāng)?shù)據(jù)字符或指一個使用根據(jù)圖5的表中移位字符[S1]-[S4]中的一個所導(dǎo)出的個別數(shù)據(jù)字符。例如,如編碼數(shù)據(jù)消息“Modulo53Math”,則采用下列93i字符“M[S4][37]ODULO[SP]53[SP][S4]MATH”注意到字符值[37]根據(jù)上面表,標(biāo)示其后面14個字符根據(jù)圖5的表被移位。由于移位字符[S4]包括于這串14個移位的字符中,組中緊隨其后的字符不移位或?qū)?yīng)于基本93i數(shù)據(jù)字符集。如果取而代之使用移位字符[S1]-[S3],則按照所用移位字符是三個中的哪一個根據(jù)圖5的表將緊隨其后的字符移位。還注意到如果字符值0-9(對應(yīng)于數(shù)據(jù)字符0-9)或字符值36-42(對應(yīng)于數(shù)據(jù)字符-,·,SP,$,/,+,%)出現(xiàn)在由移位的字符包圍的符號中,則這些字符值直接編碼為移位的串的一部分。在移位的串中可使用數(shù)字模式或功能1(FNC1)字符(下面將討論),但不能使用ECI,字節(jié)模式和字模式字符(下面將討論)。93i符號體系采用一個其符號值為47的ECI字符[47],它將有關(guān)給定符號中字節(jié)或隨后數(shù)據(jù)的規(guī)定意義的信息加以編碼。AIMIECI賦值文件根據(jù)ECI數(shù)賦予ECI數(shù)和字節(jié)或數(shù)據(jù)的意義。ECI數(shù)的范圍為000000至811799。例如,一個ECI數(shù)表示國際字符集的編碼。93i符號體系以如下方式編碼ECI數(shù)將ECI數(shù)置于符號中任何地方并后隨之以選自圖2的符號值0-51中的1,2,3或4個符號值。具有ASCII值92(見圖5)的反斜線字符“\”(反斜分隔符)在6位ECI值之前傳送。當(dāng)讀取符號時,反斜線字符用作換碼字符,用于接收一串產(chǎn)生的符號值或數(shù)據(jù)的主機或系統(tǒng)。如反斜線字符置于編碼數(shù)據(jù)中,則必須在符號內(nèi)編碼兩條反斜線字符以使主機知道需要單條反斜線字符,而不是ECI值。同樣地,如需要兩條反斜線字符,則必須編碼四條反斜線字符以使主機知道需要兩條反斜線字符。93i符號體系中用于編碼ECI數(shù)的規(guī)則列于下面表2中??偲饋碚f,對于ECI數(shù)0-899,即使可用另外的方式壓縮數(shù)據(jù)也直接編碼隨于這些ECI數(shù)之后的字節(jié)或數(shù)據(jù)。例如ECI數(shù)89可表示加密數(shù)據(jù)的特定類型的開始。以后跟隨的可壓縮的加密數(shù)據(jù)是直接編碼的。然而,如數(shù)字或全ASCII字符在一個0-899之間的ECI數(shù)之后加以編碼,則可用數(shù)字模式或字節(jié)模式(下面將描述),從而采用小寫128個ASCII值和相應(yīng)的符號值,如圖5中所示。如在用字模式(下面描述)編碼的一串?dāng)?shù)據(jù)字符中編碼ECI數(shù),則采用帶用8個前置零的全128ASCII值。ECI數(shù)900-811799以它們最有效模式編碼為字節(jié),并且禁止字模式字符([50])。例如,對于ECI數(shù)950,如需編碼93i符號值0-9的串,則采用數(shù)字模式,即使數(shù)據(jù)字符的值可能不對應(yīng)于由ECI950規(guī)定的模式中采用的數(shù)也如此。下面表2歸納了93i符號體系中用于編碼ECI值的規(guī)則。在下面表2中,“div”是整數(shù)相除運算符,而“mod”是模除運算符。“CI”指最高有效位,而“C4”指最低有效位。表2例如,為編碼一個000020的ECI值,使用下面兩個字符串[47][20],其中[47]是ECI符號值47,而[20]是93i字符“K”。為編碼一個002000的ECI值,執(zhí)行以下步驟以獲取三個所需字符[47]45][(ECI_val-96)div52][(ECI_val-96)mod52]=[47]45][1904div52][1904mod52]=[47][45][36][32]最后,為編碼一個200000的ECI值,執(zhí)行以下步驟以獲取四個所需字符[47][(ECI_val-2801)div140608+46][((ECI_val-2801)div2704)mod52][((ECI_val-2801)div52)mod52][(ECI_val-2801)mod52]=[47][197199div140608+46][197199div2704mod52][197199div52mod52][197199mod52]=[47][1+46][72mod52][3792mod52][15]=[47][47][20][48][15]符號48表示表示碼93符號體系中的一種數(shù)字壓縮模式,此處稱為“數(shù)字模式”。在數(shù)字模式中5個數(shù)字位壓為3個符號字符。因此,應(yīng)使用5/3數(shù)字模式將5個或更多位的序列壓縮。數(shù)字模式字符,符號值48反復(fù)進(jìn)和出5/3數(shù)字壓縮模式。同樣地,字節(jié)模式和字模式字符,分別為符號值49和50,也可用于退出數(shù)字模式。如在數(shù)字模式中一個符號結(jié)束,則不需要數(shù)字模式退出字符。在數(shù)字模式中,由3個符號字符表示5個數(shù)字位,其中每個符號字符具有在0-47范圍之內(nèi)的符號值。該5位數(shù)字串由下式產(chǎn)生A*482+B*48+C(1)其中A,B和C為93i符號值。當(dāng)一串多于5個數(shù)字位而又不正好是5的倍數(shù)被編碼時,應(yīng)使用下面4條規(guī)則。首先,串中超過5的倍數(shù)一個數(shù)字位時,它直接由單符號字符(符號值00-09)編碼。第二,如數(shù)字串包含多于5的倍數(shù)兩個數(shù)字位,則最后7個數(shù)字位分為一套4數(shù)字位后隨之以一套3數(shù)字位,它們中每一套由下面第三和第四規(guī)則來表示。第三,如數(shù)字串包含多于5的倍數(shù)三個數(shù)字位,則串末3個數(shù)字位根據(jù)下式由兩個符號字符表示48*A+B(2)其中A和B為93i符號值。第四,如數(shù)字串包含多于5的倍數(shù)四個數(shù)字位,則最后4個數(shù)字位用上面式(1)編碼為3個符號字符,其中式(1)的結(jié)果值在100000與109999之間。下面表3顯示示例的5,6,7,8,9和10個數(shù)字位串,其范圍自12345至123456789,及所得最佳符號值用數(shù)字模式確定。表3</tables>ECI值用作數(shù)字模式的一部分,其中符號值[47]不引用ECI協(xié)議,而代之以本身用于5/3數(shù)字壓縮方法中。如ECI值[47]跟隨于一串用數(shù)字模式編碼的數(shù)字位之后,則在用ECI值之前必須首先退出數(shù)字模式。符號值49表示93i符號體系中的字節(jié)模式,此處稱為“字節(jié)模式”。在字節(jié)模式中,93i符號體系有效地編碼全或擴充ASCII數(shù)據(jù)或直接字節(jié)數(shù)據(jù)的串。一個“字節(jié)”通常指一個8位數(shù)據(jù)集。在下列式(3)中,為每個三符號字符編碼雙字節(jié)或2個8位字節(jié)A*432+B*43+C(3)其中A,B和C是在0和42之間的93i符號值。在式(3)中將其組合值在0和65535之間的雙字節(jié)編碼為兩個符號字符(即216=65536)。在65536至75535之間的式(3)的結(jié)果值編碼4個數(shù)字,而值75535至76535編碼3個數(shù)字。結(jié)果是,字節(jié)模式提供一個3和4數(shù)字位數(shù)字壓實方法以改善字節(jié)模式中用于編碼數(shù)字字符串時的信息密度。在76536和79506之間的式(3)的結(jié)果值沒有定義,并使閱讀器不能解碼,同時輸出一個誤差信號。如同數(shù)字模式,使用其符號值為49的字節(jié)模式符號字符進(jìn)入和退出字節(jié)模式。也可用字模式符號字符(符號值50)或數(shù)字模式符號字符(符號值48)退出字節(jié)模式。此外,其符號值為43-46的移位字符[S1]-[S4]使閱讀器退出字節(jié)模式并為隨后的字符的符號值加上128。因此,退出字節(jié)模式后可有效地編碼擴充ASCII字符。類似地,如在符號末端留有一個字符,則當(dāng)前面的字符在字節(jié)模式中時,最后字符用其符號值加上128解碼(猶如在擴充ASCII中)。如符號在字節(jié)模式中結(jié)束,則不需要例如最后字節(jié)模式符號字符(符號值49)的退出模式字符。如有兩個字符留在符號末端,則兩個字符用它們的基本符號值解碼,猶如已退出字節(jié)模式。當(dāng)在字節(jié)模式中時,93i符號體系允許使用幾種編碼策略以改善符號字符編碼效率。例如,字節(jié)模式允許將兩個擴充ASCII數(shù)據(jù)字符編碼為三個符號字符的單組。對于偶數(shù)的以擴充ASCII數(shù)據(jù)字符結(jié)尾的全或擴充ASCII數(shù)據(jù)字符講,在93i符號體系的字節(jié)模式中采用三個符號字符的組。對于奇數(shù)的以擴充ASCII數(shù)據(jù)字符結(jié)束的混合的全和擴充ASCII數(shù)據(jù)字符講,偶數(shù)字符由三個符號字符的組表示,及最后一個(或僅有的)數(shù)據(jù)字符用下列兩種方法之一編碼。首先,如最后符號字符是一個擴充ASCII字符,則它編碼為全ASCII字符,前面有一個圖5中的恰當(dāng)?shù)囊莆蛔址?。第二,如最后字符是單個全ASCII字符,則它直接編碼并隨之以字節(jié)模式字符。在這兩種情況下,最后字符具有符號值128加上基本字符或移位字符的值(如圖2中所示字符值00-46)。下面表4顯示字節(jié)模式下不同數(shù)據(jù)字符串的最佳編碼?;貞浺幌?,符號值[49]系指字節(jié)模式字符,而[S?]表示四個移位字符中的一個,其符號值為43-46。在下面表4的第3欄中,字符“A”至“F”系指任何數(shù)據(jù)字符,其符號值為圖2中的00-42。表4當(dāng)數(shù)字?jǐn)?shù)據(jù)字符串要在全或擴充ASCII數(shù)據(jù)字符間編碼時,在93i符號體系中可用附加編碼策略來改善符號字符密度。如在全或擴充ASCII字符間編碼一個或兩個數(shù)字?jǐn)?shù)據(jù)字符,則將一個或兩個數(shù)字字符看作單個全ASCII字符,其ASCII值決定于數(shù)字位數(shù),為圖5中所示48至57。如3至9個數(shù)字?jǐn)?shù)據(jù)字符在全和擴充ASCII字符間編碼,則三和四位的組壓縮為字節(jié)模式的65536-75535和75536-76535。換言之,字節(jié)模式提供全或擴充ASCII字符串中3至9位數(shù)字串的滿意的數(shù)字壓縮。然而,對于10位或更多位的串,應(yīng)退出字節(jié)模式并進(jìn)入數(shù)字模式,這只需在全或擴充ASCII字符串中提供數(shù)字模式字符[48]即可。如一個、兩個、三個或四個標(biāo)準(zhǔn)或基本93i數(shù)據(jù)字符要在全或擴充ASCII字符串中編碼,則這類基本數(shù)據(jù)字符當(dāng)作字節(jié)對待。然而,如五個或更多基本數(shù)據(jù)字符要在全或擴充ASCII字符中央編碼,則下列方法更有效首先編碼字節(jié)模式字符[49]以移出字節(jié)模式,直接編碼該五個或更多基本數(shù)據(jù)字符,然后用另一個字節(jié)模式字符[49]再進(jìn)入字節(jié)模式。下面表5提供置于全或擴充ASCII字符串中的數(shù)字位串的例子。在下面表5中,用連詞符將字符類型隔開。表5符號值50表示93i符號體系中的字模式,此處稱為“字模式”。在字模式下,將三個符號字符組合以便它們的相應(yīng)三個符號值編碼單個16位值。因此,三個符號字符能編碼亞洲字符或16位字符碼。多至65536個字符碼能用以上式(3)編碼??苫蛴米帜J阶址鸞50],字節(jié)模式字符[49]或用數(shù)字模式字符[48]來退出字模式。另外,如字節(jié)模式一樣,移位字符[S1]-[S4]后隨之以單個基本字符,或單個符號字符與字模式字符退出字模式并將128加至單字符的值上。如在字模式中符號結(jié)束,則不需要退出字符。當(dāng)緊接在前面的符號字符在字模式下編碼時,符號末尾的兩個符號字符用它們的基本值解碼。如主機采用8位處理體系結(jié)構(gòu),則閱讀器在字節(jié)模式中傳送兩個連續(xù)字節(jié)。然而如主機采用16位體系結(jié)構(gòu)(例如并行處理的雙字節(jié)),則閱讀器能采用字模式來傳送16字節(jié)的單個雙字節(jié)字至主機。再次,在字模式中93i符號體系允許采用數(shù)個策略以提高編碼效率。例如,使用類似于以上所述字節(jié)模式的方式處理字模式下編碼的字符中所包含的數(shù)字串,只有其值為76536至76635的串編碼兩個數(shù)字值。如單個數(shù)字位包含于字模式字符中,則單個數(shù)字位由[43]N表示,其中[43]是第一移位字符S1,而N是數(shù)字位。字模式字符中包含的兩個、三個或四個數(shù)字位只由恰當(dāng)字模式值表示即可,與字節(jié)方式同樣方式。當(dāng)字模式字符中包含五個數(shù)字位時,應(yīng)退出字模式并通過簡單地編碼數(shù)字模式字符[48]而進(jìn)入數(shù)字模式。當(dāng)字模式字符中包含一個單基本、全或擴充ASCII字符時,采用顯式字模式字符值來表示基本的、擴充的或全ASCII字符。如字模式字符中編碼兩個或更多個全或擴充ASCII字符,則應(yīng)退出字模式并再次簡單地插入字節(jié)模式字符[49]而進(jìn)入字節(jié)模式。下面表6顯示在字模式下93i符號體系中有效地編碼數(shù)字串或其它數(shù)據(jù)字符串的幾個例子。在下面表6中,值“25543”和“18776”系指兩個不同Unicode16位碼。第二欄中的字符類型由連詞符隔開。表6任何標(biāo)準(zhǔn)16位數(shù)據(jù)字符編碼標(biāo)準(zhǔn)可由本發(fā)明使用,例如,Unicode,JISC-6226-1983,大五(BF)或KSC5609-1987。JISC-6226-1983標(biāo)準(zhǔn)是日本工業(yè)標(biāo)準(zhǔn)字符集,用于將日文漢字和假名數(shù)據(jù)字符映射為16位碼。此數(shù)據(jù)字符標(biāo)準(zhǔn)類似于Unicode,如上所述,它在其它字符之中包括漢字和假名數(shù)據(jù)字符。然而,JISC-6226-1983標(biāo)準(zhǔn)中每個數(shù)據(jù)字符被賦予一個與Unicode標(biāo)準(zhǔn)中對等的數(shù)據(jù)字符不同的16位碼。符號值51表示93i符號體系中一個功能1(FNC1)字符。符號中第一、第二或第三位置處的FNC1字符標(biāo)志著該字符與特定應(yīng)用標(biāo)準(zhǔn)符合,這是有關(guān)技術(shù)中熟悉技術(shù)的人所知道的。位于FNC1字符之前的前綴字符的有效組合是0-9,A-Z,10-99和a-z([S4]A-[S4]Z)。在第四或隨后位置處的FNC1字符對應(yīng)于傳送的組分隔符(&lt;GS&gt;)字符。當(dāng)符號在數(shù)字、字節(jié)或字模式中而FNC1字符出現(xiàn)在該符號中時,F(xiàn)NC1字符解釋為猶如數(shù)字,字節(jié)或字模式已結(jié)束,發(fā)送一個組分隔符&lt;GS&gt;字符并重新進(jìn)入先前模式(即數(shù)字,字節(jié)或字模式)。如符號打印時有一個前導(dǎo)空格(符號值38),則閱讀器將所讀符號連同隨后的具有前導(dǎo)空格的符號存入緩存,直至遇見不帶前導(dǎo)空格的符號。此時,緩存的全部內(nèi)容,即緩存中所有所讀符號被發(fā)送,猶如碼93符號體系中一樣。其結(jié)果是,一個長符號可分為幾個較小符號,除最后一個符號外每個較小符號具有一個前導(dǎo)空格數(shù)據(jù)字符。如在符號中希望前導(dǎo)空格作為第一個數(shù)據(jù)字符而不調(diào)用此“前導(dǎo)空格附加”特征,則應(yīng)使用字節(jié)模式。如下面對于示例性解碼子程序所解釋的,讀取和解碼93i符號字符的閱讀器不發(fā)送啟或停字符或誤差校正字符。如同碼93符號體系一樣,所有數(shù)據(jù)字符都傳送,而用移位字符[S1]-[S4]中的一個開始的字符對只傳送圖5中單個ASCII字符。由于93i符號體系能編碼亞洲和其它16位字符碼,閱讀器在字模式中時將發(fā)送16位字。當(dāng)閱讀器遇到符號中的字模式字符[50]連同隨后的全或擴充ASCII字符或基本93i數(shù)據(jù)字符時,閱讀器將所有ASCII值0-255作為雙字節(jié)發(fā)送,即第一字節(jié)由8個零組成,而第二字節(jié)表示編碼ASCII數(shù)據(jù)。如一個符號不用字模式字符[50]及閱讀器并不配置以傳送雙字節(jié),則93i符號中所有數(shù)據(jù)字符都作為字節(jié)讀取和發(fā)送,如同字節(jié)模式中一樣。因此,如閱讀器采用8位體系結(jié)構(gòu),則將所發(fā)送數(shù)據(jù)用作單字節(jié)能自動提供在93i符號體系中閱讀器中更有效的編碼和發(fā)送。當(dāng)ECI字符[47]存在符號中時,執(zhí)行如同使用字模式字符一樣的過程,但只在包含一個或多個字模式字符的ECI數(shù)據(jù)字符之中,如下面將描述的。93i符號體系最好采用符號體系標(biāo)識符。93i符號體系中的符號標(biāo)識符是決定于符號中所編碼數(shù)據(jù)的特性的置于所傳送數(shù)據(jù)前的前綴。換言之,符號體系標(biāo)識符是一種統(tǒng)一標(biāo)準(zhǔn)的方法,用于報告在閱讀器中設(shè)置的特定符號體系讀取和選項功能以及在特定符號中遇到的符號體系任何其它特征。AIMUSA符號體系標(biāo)識符指南更詳細(xì)地說明了符號體系標(biāo)識符??蓪㈤喿x器編程以將符號體系標(biāo)識符前綴加至自閱讀器發(fā)送的給定數(shù)據(jù)消息上。93i符號體系的特定符號體系標(biāo)識符與碼93的符號體系標(biāo)識符相同,即“IG”。另選方案是93i符號體系可采用獨一的符號體系標(biāo)識符,例如“〕i”。然后按照下面表7中列出的規(guī)則加上一個或多個修改符數(shù)據(jù)字符。表7</tables>修改符字符“m”對應(yīng)于后隨的特定應(yīng)用標(biāo)準(zhǔn)和用AIM登記。只當(dāng)FNC1字符在第二或第三位置時才出現(xiàn)修改符字符“m”。如FNC1字符在第二位置編碼,跟隨在單數(shù)字位前綴字符之后,則符號體系標(biāo)識符后隨之以0即ASCII值48的字節(jié),后面是具有ASCII值48-57的編碼的數(shù)字,它們即傳送出去。如FNC1字符編碼在第三位置,跟隨于兩個前綴數(shù)字位之后,則兩個數(shù)字位的字節(jié)值按照表7的符號體系標(biāo)識符被傳送。如FCN1字符編碼于第二位置,其前面是一個大寫字母字符A-Z前綴,則該字母字符的單字節(jié)值,ASCII值65-90,跟隨于符號體系標(biāo)識符之后。如FNC1字符編碼于第三位置,跟隨于移位字符[S4]和一個大寫字母字符之后,則這對第一和第二位置處的字符對表示一個其ASCII值為97-122的小寫字母字符,其單字節(jié)值隨于符號體系標(biāo)識符之后發(fā)送。符號值52表示一個特殊特征標(biāo)志字符,它或表示在符號中使用誤差校正字符,或表示決定于符號中特殊特征標(biāo)志字符的位置的結(jié)構(gòu)附加特征。如特殊特征標(biāo)志字符置于符號中央,則特殊特征標(biāo)志字符標(biāo)示在符號中使用誤差校正字符。緊隨于特殊特征標(biāo)志字符之后的符號標(biāo)示符號的消息長度。一般而言,93i符號體系采用5個誤差校正字符,具有符號值0-52。93i符號體系采用Reed-Solomon誤差校正方法,用一個主要模2Galois域GF(53),帶有由下列展開式所確定的誤差校正字符生成多項式(X-2)(X-4)(X-8)(X-16)(X-32)采用誤差校正的符號可長至最大長度為53個符號字符,不包括啟和停字符。由于93i符號體系采用模53計算,因此在采用誤差校正的符號中只允許有46個數(shù)據(jù)字符,也不允許具有多于53個字符的符號。因為5個字符對應(yīng)于誤差校正字符,及2個字符對應(yīng)于消息長度標(biāo)志符和特殊功能標(biāo)志,因此只剩下46個數(shù)字字符。為解碼一個帶誤差校正的符號,打印機、計算機或其它設(shè)備必須首先確定優(yōu)化消息的消息長度L(考慮到93i符號體系中不同的數(shù)字,字節(jié),字和其它模式)。消息長度L包括全部數(shù)據(jù)消息的長度,不包括啟和停字符,特殊特征標(biāo)志字符,消息長度字符和5個誤差校正字符。特殊特征標(biāo)志字符的位置是在位置(L+2)/2處的字符之后。緊接其后插入的是消息長度字符,它具有符號值L-1,用于標(biāo)示消息長度,后者可在1與46之間。選代方案中消息長度字符可具有值為L。此后打印機、計算機或設(shè)備計算五個誤差校正字符并在啟字符之后放置五個生成的誤差校正字符中的首批兩個EC1和EC2,而將其余三個誤差校正字符EC3,EC4和EC5置于停字符之前,如圖10中所示。最后的編碼符號因此為93i啟字符,EC1,EC2,數(shù)據(jù)(1至23個數(shù)據(jù)字符),特殊特征標(biāo)志字符SFlag,消息長度字符MsgLength,數(shù)據(jù)字符(0至22個數(shù)據(jù)字符),EC3,EC4,EC5和停字符。下面是采用誤差校正字符的符號的例子。給出字符值“9,3,46,18,16,30和34”,這一字符串的長度L=8。結(jié)果是,特殊特征標(biāo)志插于第五位置((8+2)/2)=5之后,即第六位置。消息長度字符隨之于后,并具有字符值7(即8-1=7)。最后的編碼消息是“9,3,46,18,50,52,7,16,30,34”,它產(chǎn)生下列多項式9X5+3X6+46X7+18X8+50X9+52X10+7X11+16X12+30X13+34X14多項式采用模53計算,其中乘,除,加和減的結(jié)果始終在GF(53)域內(nèi),其值為0至52。為獲得正確結(jié)果,完成恰當(dāng)?shù)乃阈g(shù)運算,如結(jié)果大于52,連續(xù)地減以53,直至結(jié)果在0至52的范圍內(nèi),及類似地,如結(jié)果小于0,則加53直至結(jié)果在該范圍內(nèi)。例如,數(shù)(-123),(-17),(89),和(407)在模53計算中都等于(36)。使用模53計算,發(fā)生器多項式成為X5+44X4+21X3+44X2+50X+39。用該發(fā)生器多項式去除上面的編碼多項式(即34X14+30X13+16X12+7X11+52X10+50X9+18X8+46X7+3X6+9X5+0X4+0X3+0X2+0X+0),得到余數(shù)多項式為13X4+17X3+24X2+12X+28。系數(shù)的模53補數(shù)是誤差糾正碼字E5-E1,它們分別對應(yīng)于“40,36,29,41和25”。因此,最后編碼的串是“25,41(EC1和EC2),9,3,46,18,50,52(特殊特征標(biāo)志),7(消息長度字符),16,30,34,29,36和40(EC3,EC4和EC5)”。注意到特殊特征標(biāo)志字符52始終位于奇數(shù)數(shù)據(jù)字符的正中或偶數(shù)數(shù)據(jù)字符的中央的左側(cè)。當(dāng)只有一個數(shù)據(jù)字符時,誤差糾正字符EC1-EC5仍分布在符號中。例如,對于只有一個數(shù)據(jù)字符“D”的符號而言,不帶啟/停字符的編碼的符號是“EC1,EC2,D,[52],[消息長度],EC3,EC4,EC5”。93i符號體系中的誤差校正可恢復(fù)多至兩個錯誤字符,或一個錯誤字符和一或兩個丟失字符(被刪字符),或多至三個丟失字符。因此,遮蓋了3個數(shù)據(jù)字符的單個垂直寬劃道可予以校正。此外,因特殊特征標(biāo)志字符是居中的,93i符號體系允許恢復(fù)丟失的符號頭或尾,包括啟或停字符。通過在符號中央提供特殊特征標(biāo)志字符,符號可按半個解碼,從而有效地使其垂直冗余度加倍(以類似于UPC符號體系的方式)。由于五個誤差校正字符在符號中分為兩組(EC1和EC2位于開始處,及EC3-EC5位于末尾),最后所得符號更能抗損害。例如,如所有誤差校正字符都位于符號的一端并且該端被遮蓋或損害,則所有誤差校正字符將丟失。特殊特征標(biāo)志字符和消息長度字符除標(biāo)示符號在其長度中包括誤差校正字符外,還對符號提供重要數(shù)據(jù)。將特殊特征標(biāo)志字符置于符號中央,閱讀器就可以確定符號中央在何處及符號一端是否損害或丟失。連同消息長度字符和剩余誤差校正字符一起,閱讀器可補償這類損害(如果它不超過可由誤差糾正字符校正的范圍)。消息長度字符容易地向閱讀器提供符號長度,如上所述,它可用來便于誤差校正及其它用途。特殊特征標(biāo)志字符52也可用作單字符標(biāo)志,用于多行有序銜接或結(jié)構(gòu)附加,或用于標(biāo)示一個位于啟字符之后的第一位置處的相伴數(shù)據(jù)載體(例如相鄰字符)的存在。跟隨第一位置處的初始特殊特征標(biāo)志字符之后的一個或多個字符值或為用于標(biāo)識該符號為一起組成一個集合單符號的多至15個個別符號的組的一個成員的“修改符”字符,或為用于提供特定閱讀器指令以幫助一個或多個相伴數(shù)據(jù)載體的解碼和數(shù)據(jù)管理的相鄰標(biāo)記標(biāo)示值?!皹?biāo)記標(biāo)示值”是跟隨于用于標(biāo)識有關(guān)相鄰數(shù)據(jù)載體(下面將描述)的信息的特殊特征標(biāo)志字符之后的其值為8,14-17,22-26和30-35的單字符。“修改符字符”是用于標(biāo)示一個在1至5個符號間的結(jié)構(gòu)附加組長度的其符號值不在上述集合之內(nèi)并在9和45之間的單字符。換言之,1至5個附加字符與現(xiàn)有符號組成一個較大字符。0與7之間的符號值,后隨之以6與47之間的字符值標(biāo)示6和15個符號之間的組長度,如下所述。除采用上述93i啟和停字符組合外,后隨以其字符值為8的標(biāo)記標(biāo)示值的特殊特征標(biāo)志字符標(biāo)示著該符號具有一個相伴的可行掃描符號(例如線性或疊層符號)。后隨以其字符值為8的標(biāo)記標(biāo)示值的特殊特征標(biāo)志字符還標(biāo)示該93i符號采用誤差校正。不像當(dāng)前可用的線性符號體系,93i符號與其相伴符號能編碼多集合數(shù)據(jù)。例如,相伴符號能編碼產(chǎn)品標(biāo)識號,批號,定購號,份額號,其它用戶定義的數(shù)據(jù)集合,以及其它預(yù)定義的數(shù)據(jù)集合。這類相伴符號通常編碼補充數(shù)據(jù),后者與作為相伴的93i符號有關(guān)。當(dāng)閱讀器將一個具有93i啟和停字符的93i符號,或一個具有啟字符并后隨之以特殊特征標(biāo)志字符和其值為8的修改符字符的符號掃描或成像時,閱讀器知道應(yīng)有相伴符號靠近該93i符號,因此試圖自相伴符號收集數(shù)據(jù)。例如,對于具有激光掃描器的閱讀器而言,當(dāng)掃描器自相伴符號讀取數(shù)據(jù)時,激光掃描器仍然通電。對于2D成像器閱讀器而言,閱讀器掃描其圖像存儲器以識別相伴符號的存儲圖像,或獲取鄰近于93i符號的區(qū)域的數(shù)字圖像以尋找相伴符號。結(jié)果是,通過識別相伴符號的存在,閱讀器不浪費能量或性能。參照圖11,一個示例性93i符號200包括一個相鄰相伴符號202。相伴符號202已知為二維符號,具體為PDF417符號?!岸S符號”一般指選自多行或疊層符號體系例如碼49和PDF417的符號,或選自平面符號體系例如CodeOne,MaxiCode和DataMatrix的符號。93i符號200分別包括啟和停字符204和206。以及特殊特征標(biāo)志字符208和標(biāo)記標(biāo)示值210。當(dāng)具有激光掃描器的閱讀器掃描93i符號200時,閱讀器發(fā)現(xiàn)存在著相鄰的相伴符號202,即繼續(xù)掃描以便不但自93i符號也自相伴符號收集數(shù)據(jù)。特殊特征標(biāo)志字符208和標(biāo)記標(biāo)示值210為閱讀器提供附加數(shù)據(jù),如下所述。圖14顯示一個示例性93i符號,它帶有一個位置鄰近并在93i符號上面的相伴PDF417符號。圖15顯示一個帶有相伴碼49符號的93i符號。碼49符號位于93i符號靜區(qū)之右。如此處一般所用,詞“標(biāo)記”與詞“數(shù)據(jù)載體”可互換使用,以指用于存放或編碼數(shù)據(jù)的機器可讀符號或設(shè)備。例如,數(shù)據(jù)載體或標(biāo)記包括射頻(RF)可讀標(biāo)記,包括線性和二維符號的機器可讀符號等。當(dāng)閱讀器在第一位置處檢測出帶有相鄰的標(biāo)記標(biāo)示值的特殊特征標(biāo)志字符時,來自標(biāo)記標(biāo)示值的信息幫助閱讀器解碼相伴標(biāo)記,并能提供指導(dǎo),告訴閱讀器對相伴標(biāo)記中編碼的信息采取什么行動。其值為14的標(biāo)記標(biāo)示值指示閱讀器或主機在讀/寫子程序中用相伴符號中的數(shù)據(jù)替代與93i符號相關(guān)的數(shù)據(jù)。例如,圖11中的93i符號200能提供一個記錄定位符名稱以標(biāo)示存于閱讀器中或主計算機中的數(shù)據(jù)庫中的特定記錄或文件。如該標(biāo)記標(biāo)示值210具有字符值14,則93i符號200指示閱讀器用相伴符號202中編碼的數(shù)據(jù)替代由93i符號標(biāo)示的記錄。結(jié)果是,93i符號200和相伴符號202可替代外部存儲的數(shù)據(jù)。具有值15的標(biāo)記標(biāo)志值指示閱讀器或主機將相伴符號中的數(shù)據(jù)置于與93i符號相關(guān)的數(shù)據(jù)記錄的始端,而具有值16的標(biāo)記標(biāo)示值指示閱讀器或主機將相關(guān)的數(shù)據(jù)置于相關(guān)數(shù)據(jù)記錄的末尾。具有值17的標(biāo)記標(biāo)示值指示閱讀器或主機不發(fā)送相關(guān)數(shù)據(jù)而相反可能在閱讀器的顯示設(shè)備上顯示數(shù)據(jù)。具有值22-26的標(biāo)記標(biāo)示值不但向閱讀器標(biāo)示在93i符號附近有例如平面符號的相伴二維符號,而且還提供該平面符號的預(yù)定對準(zhǔn)和位移的標(biāo)示。平面符號通常采用相對于探測器圖形而放置的正多邊形安排(例如CodeOne,或DataMatrixMaxiCode)。由于閱讀器知道平面符號相對于93i符號的特定對準(zhǔn),平面符號可避免使用探測器圖形,因而在原先由探測器圖形占據(jù)的空間內(nèi)提供附加的數(shù)據(jù)字符。參照圖11,標(biāo)記標(biāo)示值210可能具有值22,它向閱讀器標(biāo)示著相伴符號220位于93i符號200之上。其它標(biāo)記標(biāo)示值可標(biāo)示相伴符號位于相對于93i符號的下面,左面或右面,或其它一些地方。例如,參照圖12,93i符號214具有兩維相伴符號216。該兩維相伴符號216可具體與93i符號214對準(zhǔn)以使93i符號的右側(cè)邊緣218與相伴符號的左側(cè)邊緣220垂直對準(zhǔn)。具有值30-35的標(biāo)記標(biāo)示值告訴閱讀器存在一個相伴標(biāo)記,并提供如何自標(biāo)記獲取信息的指示或標(biāo)示。例如,如圖13中所示,相伴標(biāo)記可以是一個射頻(RF)標(biāo)記226,及93i符號224中的標(biāo)記標(biāo)示值的值可標(biāo)示著采用特定RF識別(RFID)碼以獲取存于標(biāo)記中的數(shù)據(jù)。選代方案是,93i符號224中的編碼數(shù)據(jù)可向閱讀器提供指示以自RF標(biāo)記226輪詢或獲取數(shù)據(jù),例如提供特定頻率。下列表歸納了標(biāo)記標(biāo)示值及它們對閱讀器的相應(yīng)標(biāo)示。標(biāo)記標(biāo)示值可標(biāo)示一個特定相伴標(biāo)記。例如,標(biāo)記標(biāo)示值22-26可標(biāo)示特定兩維符號體系,例如PDF417或CodeOne。當(dāng)閱讀器遇到標(biāo)記標(biāo)示值時采用的特定指令集合最好預(yù)先確定和標(biāo)準(zhǔn)化以便所有閱讀器在遇到這類符號時完成相同操作??傊?,93i符號體系提供一種方法用于向閱讀器提供指令,例如是否繼續(xù)掃描/成像以尋找相伴符號的指令。例如,93i符號體系采用一種方法,使用啟和/或停字符以編碼用于控制閱讀器的數(shù)據(jù)。啟和停字符的組合提供四類有效符號。這四類有效符號加速讀取或解碼過程,例如標(biāo)示是否閱讀器應(yīng)采用誤差校正。此外,93i符號體系可編碼數(shù)據(jù),它幫助閱讀器自相伴符號或標(biāo)記中檢索數(shù)據(jù),例如通過使用標(biāo)記標(biāo)示值?,F(xiàn)參照跟隨于特殊特征標(biāo)志字符之后的用于標(biāo)示結(jié)構(gòu)附加的修改符字符,該修改符字符是根據(jù)下列規(guī)則在算法上生成的。如第一字符具有在9與45之間的字符值,則字符值轉(zhuǎn)換為6位,及前三位是有序符號值及第二批三位是組長度。例如,45對應(yīng)于6位101101,或一組5個符號中的第五個符號。如第一修改符字符具有0與7之間的字符值及緊隨其后的字符具有6與47之間的字符值,則兩個字符中每個都轉(zhuǎn)換為6位并連起來形成12個連續(xù)位的單串。前三位和第8位始終是零位,而位4至7標(biāo)識有序符號數(shù)及位9至12表示集合符號的組長度。例如,7,47對應(yīng)于12位二進(jìn)制串000111101111,位4至7為1111及位9至12為1111,因此表示15個符號中的第15個符號。作為另一個例子,下面表8顯示93i符號體系的結(jié)構(gòu)附加中的修改符字符的例子。表8為便于保證一組符號應(yīng)連在一起,在n個字符的n之后包括兩個檢驗字符。第一檢驗字符計算為該組符號中所有數(shù)據(jù)字符的ASCII值的模43和(不包括特殊特征標(biāo)志字符,修改符字符,模字符,檢驗或誤差校正字符)。類似地,第二檢驗字符計算為該組符號中所有數(shù)組字符的ASCII值的模43差,包括第一檢驗字符,但不包括特殊特征標(biāo)志字符,修改符字符,模字符,誤差校正字符或其它檢驗字符。一組結(jié)構(gòu)附加符號中的每個符號可按任何順序掃描或成像,及帶有誤差校正字符的符號可與缺少誤差校正字符的正規(guī)93i符號混合。來自所有符號的數(shù)據(jù)都緩沖地存在閱讀器中并與閱讀器中任何前導(dǎo)和后導(dǎo)使能字符,例如回車(CR),換行(LF)等字符一起按正確順序發(fā)送??蛇x地,可配置閱讀器以使用此處解釋的符號體系標(biāo)識符協(xié)議發(fā)送個別符號。在此情況下,合適的符號體系標(biāo)識符后隨以雙數(shù)字位對,n之m,并附在每個符號的數(shù)據(jù)傳送之前。例如,如數(shù)據(jù)字符串“123”是在兩個符號中的第一個中及數(shù)據(jù)字符串456是在兩個符號中的第二個中,則第一個符號中的編碼符號值為“52,10,1,2,3”及第二個符號中的編碼符號值為“52,18,8,4,4,5,6”,其中8=(49+50+51+52+53+54)mod43,及4=(49-50-51-52-53-54)mod43。自閱讀器發(fā)送的數(shù)據(jù)作為數(shù)據(jù)字符串1,2,3,4,5,6,CR,LF傳送出去。如閱讀器配置以發(fā)送個別結(jié)構(gòu)附加符號及首先掃描兩個符號中的第2個,則閱讀器將發(fā)送“〔,G,D,0,2,0,2,8,4,4,5,6”,這是ASCII值序列“93,71,68,48,50,48,50,56,52,52,53和54”。在選代實施例中,一組結(jié)構(gòu)附加符號中的每個符號包括一個文件標(biāo)識字符,而不是第一和第二檢驗字符。一組結(jié)構(gòu)附加符號中的每個符號包括選自符號值0至42(數(shù)據(jù)字符0至%)中任何一個的同一文件標(biāo)識字符。文件標(biāo)識字符將每個符號標(biāo)識為對應(yīng)于它們的相關(guān)組。不同組的結(jié)構(gòu)附加符號中的符號因此具有不同于它們的對應(yīng)組的用于標(biāo)識這類符號中的每個符號的文件標(biāo)識字符。文件標(biāo)識字符可使打印機更易打印,因為打印機不必進(jìn)入特定模式而能在一個時間內(nèi)只打印一個符號。文件標(biāo)識字符的好處是允許用戶在無緩存模式下匹配文件,只要符號中包括一個合適的符號體系標(biāo)識符或在主計算機上運行的簡單軟件程序完成這些組合。文件標(biāo)識字符可以例如放于特殊特征標(biāo)志字符之后。在另一選代實施例中,特殊特征標(biāo)志可與一個或多個后隨符號值一起使用,可用于數(shù)個個別的符號中以表明一個完整的兩維符號。例如,標(biāo)志后可跟隨一個其值由符號的位置和長度所組成的單字符。特殊特征標(biāo)志字符52連同一個或多個后隨符號值標(biāo)示兩維平面中每個符號的確切位置,從而有效地形成一個兩維符號。例如,四個符號可一起形成單個具有兩行的兩維符號。特殊特征標(biāo)志字符52連同第一個后隨符號值可標(biāo)示一個符號形成兩維符號的左上部分,特殊特征標(biāo)志符號連同第二符號值則標(biāo)示四個符號中的另一個對應(yīng)于兩維符號的右下角。結(jié)構(gòu)附加兩維符號中最后符號的檢驗字符是整個兩維符號的檢驗字符。一個給定的符號既可在符號中央包括特殊特征標(biāo)志字符以標(biāo)示該符號包括誤差校正字符,又可在符號始端包括它以標(biāo)示結(jié)構(gòu)附加特征的使用?,F(xiàn)看一下根據(jù)圖1中符號自閱讀器發(fā)送數(shù)據(jù)的例子。圖1中符號將串“9,3,i,EC1,16,{30908}”編碼,發(fā)送的數(shù)據(jù)為〕G793i\00001630908它在字節(jié)中為93,71,55,57,51,105,92,48,48,48,48,49,54,120,128.注意到與數(shù)據(jù)初始地傳送的符號體系標(biāo)識符“]G7”包括修改符字符“7”,它在表7標(biāo)明出現(xiàn)一個EC1字符及與傳送中包括的“\NNNNNN”EC1值一起傳送字節(jié)。如閱讀器配置為將所有單字節(jié)作為雙字節(jié)發(fā)送而雙字節(jié)字符則不變,則符號體系標(biāo)識符將改為“]G8”,下列字節(jié)序列將自閱讀器發(fā)送0,93,0,71,0,56,0,57,0,51,0,105,0,92,0,48,0,48,0,48,0,48,0,49,0,f,120,188。因為該符號包含一個ECI字符,必須使用符號體系標(biāo)識符,而閱讀器如不發(fā)送符號體系標(biāo)識符字符就不能解碼符號。然而,如ECI字符“\000016”不在符號中編碼,則有待自閱讀器接收所發(fā)送數(shù)據(jù)的主機去解釋所發(fā)送消息。在此情況下,當(dāng)在符號中編碼字模式字符時,閱讀器必須將符號作為雙字節(jié)發(fā)送,及如允許使用符號體系標(biāo)識符時,則正確前綴應(yīng)為“]G4”。類似地,如字模式字符不出現(xiàn)在符號中,但閱讀器配置為將所有單字節(jié)作為雙字節(jié)發(fā)送并保持所有雙字節(jié)字符不變,則符號體系標(biāo)識符仍為“]G4”。因此,將發(fā)送編碼串“9,3,i,{30908}”如下]G493i30908它在字節(jié)中為0,93,0,71,0,52,0,57,0,51,0,105,120,188.圖6顯示一個示例性符號字符打印設(shè)備100。該設(shè)備100包括一個打印機102,一個中央處理單元(CPU)104,一個存儲器106,一個鍵盤107和一個副存儲器108。打印機102是常用類型,能打印條碼和人類可讀數(shù)據(jù)字符。熟悉技術(shù)的人可選用任何適用于本發(fā)明的打印機。CPU104通過端口或線109。在電氣上連至主計算機,或其它應(yīng)用設(shè)備。執(zhí)行存于存儲器106及/或副存儲器108中的子程序(圖7)的CPU104將16位數(shù)據(jù)字符碼轉(zhuǎn)換為計數(shù),并送至打印機102。打印機102解釋這些計數(shù)并將它們轉(zhuǎn)換為打印的符號字符,通常是條碼標(biāo)符形式?!皹?biāo)符”一般指任何紙的,布的,塑料的,金屬的或其它柔韌的或剛體的材料,適用于在其上打印或形成一個或多個符號字符和/或數(shù)據(jù)字符。然而熟悉有關(guān)技術(shù)的人知道“標(biāo)符”一詞也指印在物體上的任何符號字符,例如消費者產(chǎn)品的包裝或在物體上形成的凸板印刷。打印的標(biāo)符既可包括符號字符,也可包括相應(yīng)的人類可讀數(shù)據(jù)字符。圖1的標(biāo)符101是本發(fā)明實施例中打印或讀取的標(biāo)符例子。圖7顯示圖6的打印設(shè)備100在子程序111中打印一個具有多個符號字符及相應(yīng)的數(shù)據(jù)字符的條碼標(biāo)符所完成的示例性步驟。步110中選用、輸入或確定一個數(shù)據(jù)字符串,例如使用鍵盤107輸入。該數(shù)據(jù)字符串也可通過線109自主計算機105輸入至CPU104。當(dāng)在鍵盤107上按下鍵后,該按鍵即轉(zhuǎn)換為“掃描碼”并自鍵盤傳送至鍵盤與之相連的設(shè)備(例如打印設(shè)備100或主計算機105)。此掃描碼表示鍵盤上已按的特定鍵,而與數(shù)據(jù)字符集合例如ASCII或Unicode中的任何具體字符或值無關(guān)。步112中CPU104將所選字符分類或語法分析為不同數(shù)據(jù)字符集合,例如字母字符,數(shù)字字符,8位字節(jié),16位字節(jié)或字符,等等。數(shù)據(jù)語法分析技術(shù)是有關(guān)技術(shù)中眾所周知的。步114中CPU104規(guī)定任何特殊字符,例如移位字符[S1]-[S4],分別為數(shù)字、字節(jié)和字模式字符[48]、[49]或[50]的模式字符等。此外,步114中CPU104判定是否有任何ECI數(shù)應(yīng)在符號中編碼。步116中CPU104根據(jù)所選數(shù)據(jù)字符確定優(yōu)化的符號字符串。例如,如五個連續(xù)的數(shù)據(jù)字符都是數(shù)字的,則CPU104確定應(yīng)采用數(shù)字模式以減少符號字符數(shù)因而增加所得符號的信息密度。步116中CPU104采用上面介紹的規(guī)則和建議以增加符號中的信息密度(例如表4-6中所示)。步118中CPU104確定每個數(shù)據(jù)字符的符號值。數(shù)據(jù)字符和它們的相應(yīng)符號值的表最好存于副存儲器108中,還有相應(yīng)符號字符的計數(shù),如圖2和5中的表。選代地,符號值可從數(shù)據(jù)字符的信息中自動地計算出。步118中CPU104根據(jù)此處描述的合適子程序?qū)⑺x數(shù)據(jù)字符編碼為選自圖2表中的符號字符。例如,如CPU104遇到一串三或五個數(shù)字位,則CPU分別采用上面描述的式(1)和式(2)。如要編碼字節(jié),則CPU104采用式(3)。步120中CPU104判定該符號是否要采用誤差校正字符。如果是,則CPU如上所述地生成誤差校正字符。選代地,CPU104采用上面描述的檢驗字符算法來生成檢驗字符“C”和“K”。步122中CPU104部分地根據(jù)待打印的符號字符數(shù)來選擇合適的X-維。步124中CPU104選擇其它格式選項,例如打印帶有人類可讀數(shù)據(jù)字符的符號,或其它熟悉有關(guān)技術(shù)的人所知道的格式選項。步126中CPU104輸出合適的碼和其它信號至打印機102,后者又將符號打印為一串符號字符(及可能數(shù)據(jù)字符)以形成條碼標(biāo)符。也可使用例如圖8中所示的條碼讀取設(shè)備140的條碼讀取設(shè)備容易地讀取93i符號體系。讀取設(shè)備140具有標(biāo)準(zhǔn)條碼閱讀器142。條碼閱讀器142包括一個光電設(shè)備143,例如激光掃描器,光柵激光器,或基于掃描筆的光傳感器。選代地,閱讀器142中的光電設(shè)備143可包括一個一維或兩維CCD,半導(dǎo)體陣列,光導(dǎo)攝像管或其它能將接收的光轉(zhuǎn)換成電氣信號的平面成像器。閱讀器142中的光電設(shè)備143也可包括一個光源,例如LED,閃光燈泡,紅外光源或其它發(fā)光元件。如此處一般所用,“閱讀器”一詞系指能將自條碼接收的調(diào)制光轉(zhuǎn)換為電信號的任何設(shè)備。閱讀器是熟悉技術(shù)的人所知道的,任何適用于本發(fā)明的這類閱讀器都可選用。讀自條碼閱讀器142的數(shù)據(jù)輸入至CPU144。存儲器146和副存儲器148連至CPU144。輸入至條碼閱讀器142的數(shù)據(jù)由CPU144處理并通過端口或線149輸入至主計算機147或其它應(yīng)用設(shè)備。選代地,數(shù)據(jù)可通過無線鏈路輸出。圖9顯示圖8的閱讀設(shè)備140在子程序150中讀取具有本符號體系的符號字符的條碼符號時所完成的步驟。步151中條碼閱讀器142將條碼標(biāo)符的符號字符掃描或成像并確定元素寬度,例如通過確定一串計數(shù)。如熟悉技術(shù)的人所知,符號字符中條之間的轉(zhuǎn)換連同讀取設(shè)備140中的計時器確定所讀符號字符的計數(shù)。這些計數(shù)又用于確定給定符號中各元素寬度。步152中CPU144分析各計數(shù),將符號兩端的靜區(qū)定位。步154中CPU144選擇前6個計數(shù),它表示第一串6個元素寬度。步156中CPU144用9去除這第一批6個計數(shù)并將結(jié)果歸一化以估計個別元素寬度。步158中CPU144將前6個元素的寬度與啟字符的寬度串相比較,又與停字符寬度串的反串比較。如串中最后6個元素對應(yīng)于啟字符中6個元素但順序相反。則CPU144知道該符號已在反方向掃描過,因此知道該符號是自右至左讀取的(與傳統(tǒng)的自左至右相反)。步160中CPU144選擇下6個元素,及步162中將元素(計數(shù))之和除以9并將結(jié)果歸一化。步164中CPU144確定所選6個元素的符號值。步166中CPU144判定該標(biāo)符是否包含任何附加元素,如果是,則繞回步160以再次完成步160至164,直至所有符號字符都已轉(zhuǎn)換為符號值。步168中CPU144判定是否已生成任何無效/不可解碼符號字符。如判定某些符號字符是不可解碼的,則子程序繞回至步160及CPU144使用其它已知解碼方法,例如對符號中個別元素的邊對邊(元素對)解碼。選代地,步168中CPU144使用條對條或空對空比較,或熟悉技術(shù)的人所知道的FactorR解碼法。步168中CPU144也能證實或判定符號字符是否清晰。CPU144分析由條碼閱讀器142產(chǎn)生的符號字符信號,以判定是否CPU能認(rèn)識寬元素但不能認(rèn)識單寬元素。如CPU144不能認(rèn)識一個或多個符號字符中的單寬元素,則CPU使解碼子程序流產(chǎn),向CPU提供模糊數(shù)據(jù),或完成其它功能,例如警告用戶該符號模糊。如CPU144是充分編程的,則它能根據(jù)本發(fā)明者的美國專利5,486,689,5,514,858,5,539,191和/或1996年10月12日申請的美國專利申請?zhí)?8/493,669將模糊數(shù)據(jù)解碼。如符號清楚或如CPU144解碼了模糊數(shù)據(jù)以使所有符號都有效(即映射至數(shù)據(jù)字符),則步170中CPU根據(jù)最后兩個符號字符完成檢驗計算。選代地,如該符號包括誤差校正字符,則CPU144采用誤差校正。如在上述算法中完成檢驗字符的檢驗或誤差校正,則步171中CPU144根據(jù)合適數(shù)據(jù)存于何處而自存儲器146或自副存儲器148中檢索合適的數(shù)據(jù)字符并根據(jù)查閱表將符號值轉(zhuǎn)換為數(shù)據(jù)字符。然后將這些數(shù)據(jù)字符顯示,或由CPU144用于其它應(yīng)用場合,或通過線149輸出至主計算機147。步171中CPU144也解釋任何移位或模式符號值,例如分別為數(shù)字、字節(jié)和字模式的符號值48-50。當(dāng)CPU44遇到模式字符或其它特殊字符(符號值43-52)中的一個時,CPU進(jìn)入合適模式或如上所述地解碼符號值。選代地,CPU144可簡單地通過線149將符號值輸出至主計算機147,后者又將它們轉(zhuǎn)換為相應(yīng)數(shù)據(jù)字符。雖然為闡釋目的已描述過本發(fā)明的特定實施例和例子,但可在不背離本發(fā)明的實質(zhì)和范圍的條件下做出不同改變。例如,如存儲器106或146足夠大以包含CPU104或144為編碼、解碼、打印或讀取條碼標(biāo)符所需所有數(shù)據(jù),則不需要并可取消副存儲器108或148。選代地,CPU104或144所需數(shù)據(jù)可包含于副存儲器108或148中,因此就不需要大儲器106或146,或根本不需要此存儲器。關(guān)于93i符號體系,可將符號字符分配給與上面相對于圖2所描述的不同的數(shù)據(jù)字符。FNC1字符51或特殊特征標(biāo)志字符52可用于鎖定于一個模式以用于編碼其它數(shù)據(jù)字符集合。例如,字模式字符50可用于編碼Unicode字符,而特殊特征標(biāo)志字符52如位于符號末尾可鎖定以編碼JISC-6226-1983字符。在選代實施例中,93i符號體系可省略掉在符號中央的特殊特征標(biāo)志字符。代之的是,符號始終可采用誤差校正字符。如用戶,打印機或計算機希望產(chǎn)生較短打印的符號,則可簡單地將誤差校正字符壓縮。結(jié)果是,可打印符號而不帶五個誤差校正字符。在另一個選代實施例中,93i符號體系可采用一個誤差校正級標(biāo)示字符。該誤差校正級標(biāo)示字符標(biāo)示給定符號所采用誤差校正的級別或數(shù)量。例如,該誤差校正級標(biāo)示字符可具有三個值中的一個,這三個值分別對應(yīng)于符號中三個、五個或七個誤差校正字符。誤差校正級標(biāo)示字符最好位置靠近特殊特征標(biāo)志字符,例如在消息長度標(biāo)示字符之后。在又一個選代實施例中,特殊特征標(biāo)志字符可置于符號中其它位置,而不是符號中央。例如,特殊特征標(biāo)志字符可置于符號中對應(yīng)于(L+2)/2的位置。消息長度標(biāo)示字符即可置于等間距位置,例如(2L+2)/3位置。當(dāng)然,特殊特征標(biāo)志字符和消息長度標(biāo)示字符可置于符號中其它位置。此外,本發(fā)明可包括此處描述的美國專利和/或應(yīng)用的原理,以提供附加優(yōu)點和功能。上面引用的美國專利和應(yīng)用此處引為參考資料,猶如它們完整地被闡述。本發(fā)明特征可應(yīng)用于其它符號體系。例如,特殊特征標(biāo)志可用于任何條碼標(biāo)準(zhǔn)或機器可讀符號體系以便根據(jù)這類字符的位置采用兩種不同功能。此外,此處將93i符號體系的各方面說明為包括在線性條碼符號體系內(nèi);選代地,93i符號體系的這些方面可用于例如PDF417的疊層符號體系中或例如CodeOne的平面符號體系中。鑒于以上詳細(xì)說明,可對本發(fā)明做出這些和其它改變。一般而言,不應(yīng)將下列權(quán)利要求書中的條目理解為將本發(fā)明限制于說明書和權(quán)利要求書中公開的特定實施例,而應(yīng)理解為包括所有用于直接編碼不同數(shù)據(jù)字符例如8位字字節(jié),16位字符碼,ECI數(shù)等的所有設(shè)備,方法和符號體系。因此,本發(fā)明不受本公開內(nèi)容的限制,而它的范圍完全由下列權(quán)利要求書確定。權(quán)利要求1.一種將數(shù)據(jù)字符轉(zhuǎn)換為機器可讀符號的方法,每個符號具有深色形狀和處于形狀間的淡色空格的圖形,該方法包括以下步驟分別確定對應(yīng)于多個數(shù)據(jù)字符的多個字符碼,其中每個字符碼具有8位;將多個字符碼轉(zhuǎn)換為多個符號值,其中多個符號值中的每一個選自一個少于256個符號值的集合;及打印多個符號字符,其中多個符號分別對應(yīng)于多個符號值。2.權(quán)利要求1的方法,還包括打印附加符號字符的步驟,其中附加符號字符標(biāo)示多個符號字符對應(yīng)于至少一個8位字節(jié)。3.權(quán)利要求1的方法,還包括打印附加符號字符的步驟,其中附加符號字符標(biāo)示每一組相鄰符號字符對應(yīng)于一個16位字。4.權(quán)利要求1的方法,還包括以下步驟如多個符號值中任何一個具有第一范圍的值則采用第一檢驗字符模式;如多個符號值中任何一個具有第二范圍的值則采用第二檢驗字符模式;及根據(jù)多個符號值在第一或第二檢驗字符模式中計算至少一個第一檢驗值。5.一種將數(shù)據(jù)字符轉(zhuǎn)換為機器可讀符號的方法,每個符號具有深色形狀和處于形狀間的淡色空格的圖形,該方法包括以下步驟分別確定對應(yīng)于多個數(shù)據(jù)字符的多個字符碼;將多個字符碼轉(zhuǎn)換為多個符號值;根據(jù)多個符號值中至少幾個來計算誤差校正值;及打印多個符號字符,其中多個符號對應(yīng)于多個符號值,誤差校正值和一個用于標(biāo)示多個符號字符包括至少一個對應(yīng)于至少一個誤差校正值的符號字符的特殊特征標(biāo)志符號字符。6.權(quán)利要求1或5的方法,其中打印的步驟包括打印選自符號體系的多個符號字符的步驟,所述符號體系具有每個符號字符的三個形狀和九個單元。7.權(quán)利要求5的方法,其中打印的步驟包括以下步驟打印在多個符號字符中第一位置處的特殊特征標(biāo)志符號字符以標(biāo)志第一模式,其中多個符號字符包括對應(yīng)于至少一個誤差校正值的至少一個符號字符,及打印在多個符號字符中第二位置處的特殊特征標(biāo)志符號字符以標(biāo)示第二模式。8.權(quán)利要求5的方法,其中打印步驟包括打印靠近多個符號字符中央的特殊特征標(biāo)志符號字符。9.權(quán)利要求5的方法,其中打印步驟包括打印多個符號字符中的消息長度符號字符。10.權(quán)利要求1或5的方法,還包括以下步驟選擇第一數(shù)量的數(shù)位;將第一數(shù)量的數(shù)位轉(zhuǎn)換為第二數(shù)量的符號值,第二數(shù)量小于第一數(shù)量;打印對應(yīng)于第二數(shù)量的符號值的第二數(shù)量的符號字符;及打印一個附加符號字符,其中附加符號字符標(biāo)示至少第二數(shù)量的符號字符對應(yīng)于數(shù)位。11.權(quán)利要求1或5的方法,還包括以下步驟選擇對應(yīng)于可由計算機解釋的預(yù)選數(shù)據(jù)的一個數(shù);將該數(shù)轉(zhuǎn)換為至少一個所選符號值;打印對應(yīng)于至少一個所選符號值的至少一個所選符號字符;及打印一個附加符號,其中該附加符號標(biāo)示至少一個所選符號對應(yīng)于多個預(yù)定數(shù)中的一個。12.權(quán)利要求1或5的方法,還包括打印一個附加符號字符的步驟,其中該附加符號字符標(biāo)志多個符號字符對應(yīng)于一個符號結(jié)構(gòu)集合中的一個所選位置。13.權(quán)利要求1或5的方法,其中打印步驟包括打印選自一個標(biāo)準(zhǔn)條碼符號體系的數(shù)個符號的步驟。14.權(quán)利要求1或5的方法,其中打印步驟包括打印附加符號字符的步驟,其中該附加符號字符標(biāo)示至少一個相伴符號出現(xiàn)在用于組成一個符號的一組符號字符的附近。15.一種包括多個相鄰地放置的條并在條之間具有空格的條碼結(jié)構(gòu),至少三條和三空格的組定義至少五十個個別數(shù)據(jù)字符中的一個,每一組所具有的至少三條和三空格選自多個不同寬度,這些不同寬度分別是第一和第二寬度的整倍數(shù),其中每組的總寬度基本上等于第一或第二寬度的至少九倍。16.權(quán)利要求14的條碼結(jié)構(gòu),其中各組中的一組表示一個字節(jié)模式數(shù)據(jù)字符,其中字節(jié)模式字符標(biāo)示后隨各組對應(yīng)于至少一個具有8位的字符碼。17.權(quán)利要求14的條碼結(jié)構(gòu),其中各組中的一組表示一個字模式數(shù)據(jù)字符,其中字模式數(shù)據(jù)字符標(biāo)示后隨各組對應(yīng)于至少一個16位字符碼。18.權(quán)利要求14的條碼結(jié)構(gòu),其中各組中的某些組事實上等同于選自一個符號體系標(biāo)準(zhǔn)的各組。19.一種將數(shù)據(jù)字符轉(zhuǎn)換為機器可讀符號的方法,每個符號具有深色形狀和處于形狀間的淡色空格的圖形,該方法包括以下步驟選擇包括至少兩個符號值的一組符號值;選擇第一或第二符號值,其中第一符號值標(biāo)示符號值組一起對應(yīng)于第一模式及其中第二符號值標(biāo)示符號值組一起對應(yīng)于第二模式;及打印多個符號,其中多個符號對應(yīng)于符號值及第一或第二符號值的組。20.根據(jù)權(quán)利要求18的方法,其中選擇一組的步驟包括選擇一組對應(yīng)于數(shù)位串的符號值的步驟,及其中選擇第一或第二符號值的步驟包括選擇第一或第二數(shù)字壓縮模式的步驟。21.權(quán)利要求18的方法,其中選擇第一或第二的步驟包括選擇第三符號值的步驟,其中第三符號值標(biāo)示符號值組對應(yīng)于至少一個具有8位的字符碼。22.權(quán)利要求18的方法,其中選擇第一或第二的步驟包括選擇第三符號值的步驟,其中第三符號值標(biāo)示符號值組對應(yīng)于至少一個16位字符碼。23.權(quán)利要求18的方法,其中選擇第一或第二的步驟包括選擇第三符號值的步驟,其中第三符號值標(biāo)示符號值組對應(yīng)于至少一個對應(yīng)于可由計算機解釋的預(yù)選數(shù)據(jù)的所選數(shù)。24.權(quán)利要求18的方法,其中選擇第一或第二的步驟包括選擇第三符號值的步驟,其中第三符號值標(biāo)示至少一個附加符號字符是在多個符號附近。25.權(quán)利要求18的方法,其中選擇第一或第二的步驟包括選擇第三符號值的步驟,其中第三符號值標(biāo)示符號值組對應(yīng)于兩維符號中的所選位置。26.一種將數(shù)據(jù)字符轉(zhuǎn)換為機器可讀符號的方法,每個符號具有深色形狀和處于形狀間的淡色空格的圖形,該方法包括以下步驟選擇包括至少兩個符號值的一組符號值;提供第一和第二符號值,其中第一符號值標(biāo)示符號值組對應(yīng)于兩維符號的一部分,及其中第二符號值標(biāo)示兩維符號內(nèi)符號值組的所選位置;及打印多個符號,其中多個符號對應(yīng)于符號值和第一和第二符號值的組。27.權(quán)利要求26的方法,其中選擇一組的步驟包括為兩維符號計算至少一個檢驗字符的步驟。28.一種將形成于平面上的條碼標(biāo)符解碼的方法,該方法包括以下步驟將條碼標(biāo)符成像以產(chǎn)生用于表示多個符號字符中的每一個的一個信號;分析信號以識別符號字符;及將每個符號字符轉(zhuǎn)換為相應(yīng)的符號值,其中多個符號值中的每一個選自少于256個符號值的一個集合,及其中多個符號值一起表示至少一個具有8位的字符。29.權(quán)利要求28的方法,其中轉(zhuǎn)換第一的步驟判定多個符號字符中的檢驗字符是否檢驗,及如果不是,則采用誤差校正字符。30.權(quán)利要求28的方法,其中轉(zhuǎn)換的步驟包括在判定多個符號字符內(nèi)是否存在至少一個誤差校正符號字符之前先判定多個符號值中的預(yù)定的一個是否靠近多個符號字符的中央。31.一種用于讀取機器可讀符號的閱讀設(shè)備包括一個光接收器,用于自多個符號接收反射光及產(chǎn)生一個表示多個符號字符的信號;及一個連至光接收器的處理器,用于接收該信號并將多個符號字符轉(zhuǎn)換為多個符號值,其中多個符號值中每個都選自少于256個字符號值的集合,其中每個符號值對應(yīng)于多個數(shù)據(jù)字符中的一個,其中多個數(shù)據(jù)字符中的至少某些字符分別對應(yīng)于多個字符碼,及其中每個字符碼具有8位。32.一種具有多個符號字符的機器可讀符號體系,該機器可讀符號體系包括一個誤差校正標(biāo)志符號字符,用于標(biāo)示至少一個誤差校正符號字符存在于一組符號字符中。33.權(quán)利要求32的機器可讀符號體系,其中誤差校正標(biāo)志符號字符標(biāo)示當(dāng)處于符號字符組中第一位置處時存在誤差校正符號字符,及標(biāo)示當(dāng)位于第二位置處時該符號字符組對應(yīng)于一套可打印符號中的所選的一個。34.權(quán)利要求32的機器可讀符號體系,其中誤差校正標(biāo)志符號字符位于靠近符號字符組的中央附近的位置。35.權(quán)利要求32的機器可讀符號體系,還包括在符號字符組中的至少一個檢驗符號字符,檢驗字符根據(jù)一個算法生成,該算法不同于用于生成至少一個誤差校正符號字符的誤差校正算法。36.權(quán)利要求32的機器可讀符號體系,還包括在符號字符組中的一個消息長度符號字符,其中消息長度符號字符具有一個值,用于標(biāo)志符號字符組中待編碼數(shù)據(jù)字符的數(shù)量。37.權(quán)利要求32的機器可讀符號體系,其中誤差校正標(biāo)志符號字符包括多條相鄰地放置的條及位于條之間的空格,其中這些條具有至少兩個寬度中的一個。38.權(quán)利要求32的機器可讀符號體系,其中誤差校正標(biāo)志符號字符包括多條鄰近地放置的條和位于條之間的空格,其中這些空格具有兩個寬度中至少一個。39.權(quán)利要求32的機器可讀符號體系,其中誤差校正標(biāo)志符號字符包括多條鄰近地放置的條和位于條之間的空格,其中這些條具有至少兩個高度中的一個。40.一種具有多個符號字符的機器可讀符號體系,其中一組符號字符形成一個可打印的符號,該機器可讀符號體系包括一個特殊特征標(biāo)志符號字符,當(dāng)位于可打印符號中第一位置處時用于標(biāo)示誤差校正的使用,及當(dāng)位于可打印符號中第二位置處用于標(biāo)示第二功能。41.權(quán)利要求40的機器可讀符號體系,其中當(dāng)特殊特征標(biāo)志符號字符位于第一位置處時用于標(biāo)志誤差校正符號字符存于符號字符組內(nèi),及當(dāng)位于第二位置處時用于標(biāo)示符號字符組對應(yīng)于一套可打印符號中所選的一個。42.權(quán)利要求40的機器可讀符號體系,其中第一位置靠近符號字符組的中央。43.權(quán)利要求40的機器可讀符號體系,其中特殊特征標(biāo)志符號字符位于第二位置處時對應(yīng)于一套可打印符號中所選的一個,及其中一組符號字符包括用于識別該套可打印符號的符號字符組的所選符號字符。44.一種用于打印機器可讀符號的打印設(shè)備包括一個處理器,用于將多個字符碼轉(zhuǎn)換為多個符號值,其中多個字符碼分別對應(yīng)于多個數(shù)據(jù)字符,其中多個字符碼中預(yù)定的一個標(biāo)示至少一個誤差校正符號字符應(yīng)放于可打印符號中;及一個連至處理器的打印機構(gòu),用于將多個符號字符打印為可打印符號,其中多個符號字符分別對應(yīng)于多個符號值。45.一套對應(yīng)于一套數(shù)據(jù)字符的條碼符號,該套條碼符號包括多條相鄰地放置的條及位于條之間的空格,其中多個條和空格的組形成一個非疊層可打印符號,及其中可打印符號中至少兩組條和空格為誤差校正字符。46.權(quán)利要求45的該套條碼符號,還包括條和空格的預(yù)定組,用于標(biāo)示至少兩組條和空格出現(xiàn)在可打印符號中。47.權(quán)利要求46的該套條碼符號,其中條和空格的預(yù)定組位于可打印符號中(L+2)/2位置處,其中L是可打印符號中待編碼數(shù)據(jù)字符的數(shù)量。48.權(quán)利要求45的該套條碼符號,其中至少一個第一誤差校正字符位于可打印符號始端附近,及至少一個第二誤差校正字符位于可打印符號末尾附近。49.權(quán)利要求45的該套條碼符號,其條和空格組中的一組表示一個誤差校正級標(biāo)示字符,其中誤差校正級標(biāo)示字符標(biāo)示著可打印符號中條和空格組中采用的誤差校正級別。50.一套對應(yīng)于一套數(shù)據(jù)字符的機器可讀符號,該套機器可讀符號包括多條相鄰地放置的形狀和位于形狀之間的空格,其中多組形狀和空格形成一個可打印符號和其中可打印符號中至少第一和第二組形狀和空格是第一和第二誤差校正字符,及其中第一和第二組形狀和空格不相鄰地位于可打印符號中。51.權(quán)利要求50的該套機器可讀符號,其中該套機器可讀符號包括位于可打印符號的相反兩端的啟和停字符,及其中第一和第二誤差校正字符分別位于啟和停字符附近。52.權(quán)利要求50的該套機器可讀符號,還包括用于標(biāo)示該可打印符號包括第一和第二誤差校正字符的形狀和空格的預(yù)定組。53.一種具有多個符號字符的機器可讀符號體系,該機器可讀符號體系包括一個相伴符號存在符號字符,用于標(biāo)示至少一個相伴符號存在于用于形成一個符號的符號字符組的附近。54.權(quán)利要求53的機器可讀符號體系,其中相伴符號存在符號字符是該組符號字符中至少一個啟或停符號字符。全文摘要一種示例性實施例中的新條碼符號體系采用類似于碼93的九個單元中的三條(及空格)。定義了53個數(shù)據(jù)字符,包括若干特殊模式字符。通過采用這些特殊模式字符和一定子程序,三個符號字符可表示兩個8位字節(jié)或一個16位字。結(jié)果是,該符號體系能有效地編碼8位字節(jié)以用于計算機處理,或編碼16位字符集,例如Unicode。該符號體系編碼擴充通道解釋(ECI)數(shù),提供多數(shù)字壓縮模式,提供使用單模式字符的結(jié)構(gòu)附加以及其它特征。此外,該符號體系包括誤差校正及特殊特征標(biāo)志字符,用于標(biāo)示符號中誤差校正的使用。文檔編號G06K1/12GK1257596SQ9880541公開日2000年6月21日申請日期1998年4月16日優(yōu)先權(quán)日1997年4月16日發(fā)明者H·斯普拉格·阿克利,克里斯托弗·A·威克洛夫申請人:因特麥克技術(shù)公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1