国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      變指令長(zhǎng)度處理的制作方法

      文檔序號(hào):6467253閱讀:198來(lái)源:國(guó)知局
      專(zhuān)利名稱(chēng):變指令長(zhǎng)度處理的制作方法
      發(fā)明
      背景技術(shù)
      1.發(fā)明領(lǐng)域本發(fā)明涉及處理系統(tǒng)中指令的格式,尤其是變長(zhǎng)度指令的格式。
      2.相關(guān)技術(shù)描述在處理系統(tǒng)中數(shù)據(jù)的操作是通過(guò)使用指令完成的,每個(gè)指令包含一操作碼部分和一參數(shù)部分。操作碼部分指定由本系統(tǒng)中的處理器執(zhí)行的操作,參數(shù)部分包含一個(gè)或多個(gè)表示數(shù)據(jù)的參數(shù),例如用于在存儲(chǔ)器中定位數(shù)據(jù)的地址和/或由處理器進(jìn)行操作的數(shù)字。
      在任何一個(gè)包含了一個(gè)或多個(gè)表示地址的參數(shù)的指令中,指令的總位數(shù)長(zhǎng)度必須足夠大從而能夠表示最大可能的地址值。一種用于減小該位長(zhǎng)的通用方法是使用地址索引,借此可以提供多種具有不同長(zhǎng)度的地址參數(shù)的指令。例如,可以提供多種具有不同長(zhǎng)度的偏移量參數(shù)以及需要不同字節(jié)數(shù)的JUMP指令。
      相似地,在任何一個(gè)包含一個(gè)或多個(gè)用來(lái)表示處理器進(jìn)行操作的數(shù)的參數(shù)的指令中,總位數(shù)長(zhǎng)度必須足夠大從而能夠表示該數(shù)的最大可能的值。通常,處理系統(tǒng)具有多個(gè)不同位長(zhǎng)度容量的存儲(chǔ)器(寄存器、ROM、RAM等),而且能夠移動(dòng)具有各種不同位長(zhǎng)的數(shù)。為了容易做到這一點(diǎn),通常的做法是為每種可能的位長(zhǎng)組合提供不同的MOVE指令。例如,即使在全部存儲(chǔ)器容量都相同的情況下(例如,三十二位容量),也可能需要四種不同的M0VE指令,即第一MOVE指令,用于把一個(gè)八位數(shù)移動(dòng)到一個(gè)具有三十二位容量的存儲(chǔ)單元;第二MOVE指令,用于把一個(gè)十六位數(shù)移動(dòng)到一個(gè)具有三十二位容量的存儲(chǔ)單元;第三MOVE指令,用于把一個(gè)二十四位數(shù)移動(dòng)到一個(gè)具有三十二位容量的存儲(chǔ)單元;第四MOVE指令,用于把一個(gè)三十二位數(shù)移動(dòng)到一個(gè)具有三十二位容量的存儲(chǔ)單元;在前三個(gè)例子中,處理器將自動(dòng)地把要移動(dòng)的字?jǐn)U展為一個(gè)三十二位的值。
      發(fā)明概述本發(fā)明的目的是減少程序所需要的存儲(chǔ)器空間。這可以通過(guò)壓縮參數(shù)而不增加操作碼的數(shù)目來(lái)實(shí)現(xiàn)。
      根據(jù)本發(fā)明,一種在處理系統(tǒng)中形成執(zhí)行指令的方法包含提供一個(gè)用來(lái)確定至少一個(gè)由處理器執(zhí)行的操作的操作碼部分;以及提供一個(gè)可壓縮的參數(shù)部分,它包含至少一個(gè)表示相應(yīng)數(shù)據(jù)值的參數(shù),該參數(shù)部分還包含一個(gè)擴(kuò)展指示符用來(lái)表示該至少一個(gè)參數(shù)的壓縮狀態(tài)。
      注意在這里所使用的詞語(yǔ)“存儲(chǔ)器”,是指廣泛使用的存儲(chǔ)器類(lèi)型相一致,包含各種類(lèi)型的易失性和非易失性器件,沒(méi)有局限性地包含RAM、DRAM、ROM、寄存器以及這些器件的組合。另外,在這里使用的“指針”一詞,指的是任何標(biāo)識(shí)存儲(chǔ)單元的值。此外,“存取”數(shù)據(jù),是指從存儲(chǔ)器中獲得數(shù)據(jù),或是把數(shù)據(jù)放入存儲(chǔ)器中。
      附圖簡(jiǎn)要說(shuō)明

      圖1是一個(gè)框圖,說(shuō)明了一個(gè)用于闡明本發(fā)明最佳實(shí)施例的處理系統(tǒng)示例。
      圖2A到2D顯示了在闡明本發(fā)明時(shí)所使用的參數(shù)示例。
      圖3A到3L顯示了在闡明本發(fā)明時(shí)所使用的指令示例。
      最佳實(shí)施例的描述圖1所示的處理系統(tǒng)包含一個(gè)處理器10和一個(gè)存儲(chǔ)器20。處理器10是一個(gè)硬件加速單元,它使用時(shí)鐘脈沖來(lái)順序處理由程序計(jì)數(shù)寄存器標(biāo)識(shí)的指令。通常,程序計(jì)數(shù)寄存器包含下一個(gè)由處理器讀取并進(jìn)行操作的指令的存儲(chǔ)單元。
      此外處理器還包含一個(gè)環(huán)境寄存器組12、一個(gè)指令譯碼器14以及一個(gè)算術(shù)邏輯單元16。在這個(gè)實(shí)施例中,存儲(chǔ)器20包含一個(gè)具有多個(gè)存儲(chǔ)單元的RAM,用于存儲(chǔ)數(shù)據(jù)和/或系統(tǒng)變量,并用來(lái)作為一個(gè)LIFO(后進(jìn)先出)堆棧以促進(jìn)程序方法和/或過(guò)程的執(zhí)行。
      處理器10和存儲(chǔ)器20與公共總線30相連從而實(shí)現(xiàn)相互之間的連接,并且和其他連接到該總線上的硬件相連??偩€包含相應(yīng)的用于傳送數(shù)據(jù)諸如地址、中斷、數(shù)據(jù)、讀選通、寫(xiě)選通以及設(shè)備選取選通等的線路。更可取地,這是一條高速總線,其中至少有一部分是在具有處理器和存儲(chǔ)器的通用硅襯底上形成的。
      環(huán)境寄存器組12包含一個(gè)程序計(jì)數(shù)寄存器121、一個(gè)或多個(gè)通用寄存器123、以及一個(gè)用于堆棧尋址的寄存器124。更具體地說(shuō),在環(huán)境寄存器組中的寄存器包含程序計(jì)數(shù)寄存器121,用來(lái)保存一個(gè)不斷更新的程序計(jì)數(shù)PC以標(biāo)識(shí)下一個(gè)被處理器訪問(wèn)的存儲(chǔ)器地址;通用寄存器123,用于包含從存儲(chǔ)器20讀取的數(shù)據(jù)或者是由算術(shù)邏輯單元16生成的數(shù)據(jù);寄存器124,用來(lái)保存一個(gè)堆棧指針SP以標(biāo)識(shí)當(dāng)前訪問(wèn)的堆棧地址的存儲(chǔ)單元。
      指令譯碼器14是一個(gè)傳統(tǒng)的硬件部件,諸如一個(gè)序列發(fā)生器或者微序列發(fā)生器,用于把從存儲(chǔ)器20中讀取的指令轉(zhuǎn)換成低級(jí)操作碼。算術(shù)邏輯單元16也是一個(gè)傳統(tǒng)的硬件部件。
      依據(jù)本發(fā)明,至少有一些由處理器執(zhí)行的指令包含一參數(shù)部分和一操作碼部分。參數(shù)部分可包含以下幾種用于表示處理器所使用的數(shù)據(jù)的參數(shù)中的一種UmNC是一種表示無(wú)符號(hào)(U)、未壓縮(NC)以及總位數(shù)長(zhǎng)度為m位的數(shù)據(jù)的參數(shù);SmNC是一種表示有符號(hào)(S)、未壓縮(NC)以及總位數(shù)長(zhǎng)度為m位的數(shù)據(jù)的參數(shù);Um_C是一種表示有無(wú)符號(hào)(U)、可壓縮(_C)以及總位數(shù)長(zhǎng)度為m位的數(shù)據(jù)的參數(shù);Sm_C是一種表示有符號(hào)(S)、可壓縮(_C)以及總位數(shù)長(zhǎng)度為m位的數(shù)據(jù)的參數(shù)。
      注意那些參數(shù)類(lèi)型UmNC以及SmNC已經(jīng)為大家所熟知,但是為了說(shuō)明本發(fā)明的向后兼容性而將它們包含在其中。此外還要注意到,在每種情況下,m都表示由相應(yīng)參數(shù)所表示的最后的、未壓縮的數(shù)據(jù)的總位數(shù)。同樣根據(jù)本發(fā)明所形成的每種參數(shù)都包含一個(gè)或多個(gè)預(yù)定位長(zhǎng)的字節(jié)。在所描述的實(shí)施例中,每個(gè)字節(jié)的長(zhǎng)度為八位。
      圖2A和2B顯示了每一種相應(yīng)的類(lèi)型UmNC、SmNC的參數(shù)示例格式。在這些例子中,每個(gè)參數(shù)包含兩個(gè)字節(jié)。具體地說(shuō)
      圖2A顯示一個(gè)UmNC類(lèi)型兩字節(jié)的參數(shù),它表示一個(gè)無(wú)符號(hào)、未壓縮且總位數(shù)長(zhǎng)度為16位(m16)的數(shù)據(jù)值。在這個(gè)例子中,參數(shù)的每個(gè)字節(jié)等于它所表示數(shù)據(jù)的相應(yīng)字節(jié)。
      圖2B顯示了一個(gè)SmNC類(lèi)型兩字節(jié)的參數(shù),它表示一個(gè)有符號(hào)、未壓縮且總位數(shù)長(zhǎng)度為16位(m16)的數(shù)據(jù)值。在這個(gè)例子中,該參數(shù)的每個(gè)字節(jié)再次等于它所表示的數(shù)據(jù)的相應(yīng)字節(jié),不過(guò)該數(shù)據(jù)值的第一位是一個(gè)符號(hào)位s。
      圖2C顯示了一個(gè)Um_C類(lèi)型的兩字節(jié)參數(shù),它表示一個(gè)無(wú)符號(hào)、可壓縮且總位數(shù)長(zhǎng)度為16位(m16)的數(shù)據(jù)值,但是該數(shù)據(jù)值可以大于該參數(shù)本身的位長(zhǎng),這取決于該數(shù)據(jù)是否已經(jīng)被壓縮了。這由該參數(shù)第一個(gè)字節(jié)中的擴(kuò)展位e來(lái)指示。e值決定或者該處理器擴(kuò)展該參數(shù)的第一個(gè)字節(jié)為數(shù)據(jù)值的完全16位大小,或者從存儲(chǔ)器中讀取第二字節(jié)。
      圖2D顯示了一個(gè)Sm_C類(lèi)型的兩字節(jié)參數(shù),它表示一個(gè)有符號(hào)、可壓縮且總位數(shù)長(zhǎng)度為16位(m16)的數(shù)據(jù)值,但是該數(shù)據(jù)值可以再次大于該參數(shù)本身的位長(zhǎng),這取決于該數(shù)據(jù)是否已經(jīng)被壓縮了。再次,這由該參數(shù)第一個(gè)字節(jié)所包含的一個(gè)擴(kuò)展位e來(lái)指示,且e值決定或者是處理器擴(kuò)展參數(shù)的第一個(gè)字節(jié)為數(shù)據(jù)值的完全16位大小,或者是從存儲(chǔ)器中讀取第二字節(jié)。第二位是符號(hào)位s。
      在每個(gè)包含一個(gè)或多個(gè)參數(shù)類(lèi)型UmNC、SmNC、Um_C、Sm_C參數(shù)的指令中,具體的操作碼決定一個(gè)或者多個(gè)由該處理器執(zhí)行的操作;在指令中這些參數(shù)的數(shù)目;每一參數(shù)所定義的特征,包含該參數(shù)是否表示可壓縮的數(shù)據(jù);由該參數(shù)表示的數(shù)據(jù)的未壓縮長(zhǎng)度m;該參數(shù)是有符號(hào)的(包含一個(gè)符號(hào))還是無(wú)符號(hào)的(不包含一個(gè)符號(hào))。
      對(duì)于多字節(jié)參數(shù),同樣必須決定處理器為了形成該參數(shù)而讀取和排列字節(jié)的次序。這可以用多種方法來(lái)完成,例如通過(guò)在和相應(yīng)參數(shù)相關(guān)的具體指令的定義中包含這個(gè)次序,通過(guò)為具體的處理器定義一個(gè)參數(shù)排列的固定次序,通過(guò)在參數(shù)本身中包含指定排列次序的代碼,等等。
      更可取地,指令操作碼部分的格式已經(jīng)內(nèi)在地指定了參數(shù)的數(shù)目以及他們的特征。例如,一個(gè)ADD指令,由ALU16把一個(gè)操作數(shù)A和一個(gè)操作數(shù)B相加并且把總和保存在地址C中,其操作碼可能包含三個(gè)參數(shù),每個(gè)對(duì)應(yīng)于相應(yīng)的操作數(shù)A、B和C。要注意到,例如,A和B可以是可壓縮的值,而C可以是從一個(gè)基準(zhǔn)地址開(kāi)始的索引,它也可能是一個(gè)可壓縮的數(shù)。此外,指令本身的定義將指定這些參數(shù)中每一個(gè)的相關(guān)特征。作為另一例子,一個(gè)ENTER指令,其中處理器10將寄存器124中的堆棧指針值SP遞減得到該堆棧中的一個(gè)地址,從而將提供由值M表示的存儲(chǔ)空間,該指令的操作碼可能包含該單個(gè)無(wú)符號(hào)參數(shù)M。M的大小可以是壓縮的,因?yàn)檫@是一個(gè)基于由SP定位的當(dāng)前地址的索引。指令本身的定義將同樣指定參數(shù)M的其他相關(guān)特征。
      處理器10通過(guò)訪問(wèn)由不斷更新的程序計(jì)數(shù)器PC所指示的存儲(chǔ)器地址,逐個(gè)字節(jié)地形成每個(gè)指令。更可取地,這些地址指向在一個(gè)快速存取存儲(chǔ)器中的單元,例如一個(gè)在處理器本身中的高速緩沖存儲(chǔ)器(沒(méi)有顯示)。首先,處理器讀取操作碼,然后讀取由具體操作碼所定義的參數(shù)數(shù)目。圖3A到3J說(shuō)明了如何來(lái)處理不同類(lèi)型參數(shù)的典型例子。每個(gè)指令包含一個(gè)操作碼部分,以及隨后的一個(gè)包含一個(gè)或多個(gè)參數(shù)的參數(shù)部分。具體地說(shuō)圖3A顯示了一個(gè)具有單個(gè)一字節(jié)的UmNC類(lèi)型參數(shù)的指令。在這個(gè)例子中,m=8,且該8位的參數(shù)和它所表示的數(shù)據(jù)值是相同的。
      圖3B顯示了一個(gè)具有單個(gè)一字節(jié)的SmNC類(lèi)型參數(shù)的指令。在這個(gè)例子中,m=8,且該8位參數(shù)包含一個(gè)符號(hào)位s=0,并和它所表示的數(shù)據(jù)值是相同的。
      圖3C顯示了一個(gè)具有單個(gè)雙字節(jié)Um_C類(lèi)型參數(shù)的指令。在這個(gè)例子中,m=16,且該參數(shù)的第一個(gè)字節(jié)包含了一個(gè)擴(kuò)展位值e=0,這表明第一個(gè)字節(jié)是沒(méi)有壓縮的。因此,處理器就必須另外讀取一個(gè)字節(jié)來(lái)形成完整的16位參數(shù)。
      圖3D顯示了一個(gè)具有兩個(gè)單字節(jié)Um_C類(lèi)型參數(shù)的指令。對(duì)每個(gè)參數(shù)來(lái)說(shuō),m=16,且第一位是一個(gè)擴(kuò)展位,其值e=1。這告訴處理器10將每個(gè)參數(shù)擴(kuò)展為由該參數(shù)所表示的完整的16位數(shù)據(jù)值。這可以通過(guò)任何與這個(gè)指令的具體操作碼有關(guān)的解壓縮方法來(lái)完成。例如,如果某一參數(shù)表示一個(gè)寫(xiě)入16位寄存器中的索引值,但是它的最大值能夠用7位或者更少的位形成。通過(guò)刪除擴(kuò)展位和在剩余7位前面插入9位預(yù)定值(例如9個(gè)零),就能夠?qū)⒃搮?shù)擴(kuò)展為16位?;蛘撸ㄟ^(guò)與具體操作碼有關(guān)的解壓縮算法能夠?qū)⒃?位參數(shù)擴(kuò)展為完整的16位。
      圖3E顯示了一個(gè)具有一個(gè)四字節(jié)Um_C類(lèi)型參數(shù)的指令。在這個(gè)例子中,m=32,并且前三個(gè)字節(jié)中的每一個(gè)都包含一個(gè)擴(kuò)展位,其值e=0。處理器讀取并刪除這三個(gè)擴(kuò)展位的值,從前三個(gè)字節(jié)中的每一個(gè)讀取7個(gè)數(shù)據(jù)位,從第四個(gè)字節(jié)中讀取8個(gè)數(shù)據(jù)位,然后在剩余的29位前面插入3位預(yù)定值(例如3個(gè)零),從而將該參數(shù)擴(kuò)展到32位。
      圖3F顯示了一個(gè)具有一個(gè)三字節(jié)Um_C類(lèi)型參數(shù)的指令。在這個(gè)例子中,m=32,前兩個(gè)字節(jié)的每一個(gè)都包含一個(gè)擴(kuò)展位,其值e=0,而且第三個(gè)字節(jié)包含一個(gè)擴(kuò)展位,其值e=1。處理器從這三個(gè)字節(jié)中的每一個(gè)讀取7個(gè)數(shù)據(jù)位,讀取且刪除這三個(gè)擴(kuò)展位的值,然后在剩余的21位的前面插入11位預(yù)定值(對(duì)應(yīng)于刪除的擴(kuò)展位每一個(gè)插入一位,對(duì)應(yīng)于具有值e=1的擴(kuò)展位插入8位),從而將該參數(shù)擴(kuò)展到32位。如果通過(guò)用零來(lái)填充整個(gè)數(shù)據(jù)值的缺少位來(lái)完成擴(kuò)展,處理器將在由該三字節(jié)參數(shù)所提供的21個(gè)數(shù)據(jù)位的前面插入11位的零值。注意到,在本發(fā)明的最佳格式中,將參數(shù)字節(jié)以相反的次序,即從最不重要的字節(jié)到最重要的字節(jié),保存在存儲(chǔ)器中并以該次序從存儲(chǔ)器中讀取。因此,在圖3F的例子中讀取本參數(shù)的第一個(gè)字節(jié)構(gòu)成數(shù)據(jù)值最不重要的7位[1010101];讀取本參數(shù)的第二個(gè)字節(jié)構(gòu)成本數(shù)據(jù)值其次重要的7位[1110000];讀取本參數(shù)的第三個(gè)字節(jié)構(gòu)成本數(shù)據(jù)值最重要的7位[1100110];以及在最后讀取的參數(shù)第三個(gè)字節(jié)的前面插入11個(gè)零從而構(gòu)成完整的數(shù)據(jù)值
      。
      圖3G顯示了一個(gè)具有單個(gè)雙字節(jié)Sm_C類(lèi)型參數(shù)的指令。在這個(gè)例子中,m=16,第一字節(jié)包含一個(gè)值e=0的擴(kuò)展位以及一個(gè)值s=0的符號(hào)位。因此,處理器讀取這兩個(gè)字節(jié)并在該符號(hào)位和讀取的剩余14個(gè)數(shù)據(jù)位之間插入一位預(yù)定值。為簡(jiǎn)便起見(jiàn),更可取地使這個(gè)預(yù)定值和符號(hào)位的值相同。
      圖3H顯示了一個(gè)具有單個(gè)一字節(jié)Sm_C類(lèi)型參數(shù)的指令。在這個(gè)例子中,m=16,該字節(jié)包含一個(gè)值e=1的擴(kuò)展位以及一個(gè)值s=1的符號(hào)位。因此,處理器讀取該單字節(jié),并在該符號(hào)位和讀取的剩余的六個(gè)數(shù)據(jù)位之間插入9位預(yù)定值(例如符號(hào)位的值)。
      圖3I顯示了一個(gè)具有單個(gè)四字節(jié)Sm_C類(lèi)型參數(shù)的指令。在這個(gè)例子中,m=32,第一個(gè)字節(jié)包含一個(gè)值e=0的擴(kuò)展位以及一個(gè)值s=0的符號(hào)位,第二個(gè)和第三個(gè)字節(jié)中的每一個(gè)都包含一個(gè)值e=0的擴(kuò)展位,并第四個(gè)字節(jié)包含剩余的8位數(shù)據(jù)值。因此,處理器讀取這四個(gè)字節(jié),并且在符號(hào)位和讀取的剩余二十八個(gè)數(shù)據(jù)位之間插入三位預(yù)定值,例如符號(hào)位的值。
      圖3了顯示了一個(gè)具有單個(gè)三字節(jié)Sm_C類(lèi)型參數(shù)的指令。在這個(gè)例子中,m=32,第一個(gè)字節(jié)包含一個(gè)值e=0的擴(kuò)展位以及一個(gè)值s=1的符號(hào)位,第三個(gè)字節(jié)包含一個(gè)值e=1的擴(kuò)展位。因此,處理器不改變地讀取前兩個(gè)字節(jié),并以8位擴(kuò)展第三個(gè)字節(jié)從而形成由該參數(shù)表示的完整32位數(shù)據(jù)值。
      在上述例子中,每個(gè)參數(shù)都是逐位讀取的,并且通過(guò)讀取在每個(gè)字節(jié)中的擴(kuò)展字段來(lái)決定是否擴(kuò)展該參數(shù)。由擴(kuò)展字段占據(jù)的空間減少了整個(gè)尋址范圍。作為選擇,擴(kuò)展字段可以?xún)H僅包含在參數(shù)的第一個(gè)字節(jié)中。在這種情況下,參數(shù)要么保存在一個(gè)壓縮的單字節(jié)格式中,要么保存在一個(gè)擴(kuò)展的格式中。
      圖3K和3L說(shuō)明了在參數(shù)字段內(nèi)如何做到這些的典型例子。這些圖中的每一個(gè)都表示了一個(gè)32位數(shù)據(jù)值的參數(shù)實(shí)例。緊跟著操作碼的第一個(gè)字節(jié)包含一個(gè)位字段,它包含擴(kuò)展位e。擴(kuò)展位的值指示兩種可能情況中存在哪一個(gè)。這就是說(shuō),要么參數(shù)部分包含僅僅單個(gè)必須擴(kuò)展為32位的被壓縮參數(shù),要么參數(shù)部分包含四個(gè)字節(jié)表示擴(kuò)展了的32位數(shù)據(jù)值。
      參考圖3K和3L圖3K顯示一個(gè)具有單個(gè)Um_C類(lèi)型參數(shù)的指令。在這個(gè)例子中,m=32,且參數(shù)的第一個(gè)(而且是唯一的)字節(jié)包含一個(gè)值e=1的擴(kuò)展位。這告訴處理器把該參數(shù)擴(kuò)展為由該參數(shù)表示的整個(gè)32位數(shù)據(jù)值。
      圖3L同樣顯示一個(gè)具有單個(gè)Um_C類(lèi)型參數(shù)的指令。在這個(gè)例子中,又一次m=32,但是參數(shù)的第一(共4個(gè))個(gè)字節(jié)包含一個(gè)值e=0的擴(kuò)展位。這告訴處理器讀取另外的三個(gè)字節(jié)來(lái)形成完整的數(shù)據(jù)值。
      雖然已經(jīng)對(duì)本發(fā)明的具體實(shí)施例進(jìn)行了描述,但是在本發(fā)明的范圍內(nèi)可能有許多選擇。例如,不是在操作碼中內(nèi)在地指定相關(guān)參數(shù)的數(shù)目,而是可以用參數(shù)本身內(nèi)部的位字段來(lái)指出這一點(diǎn),而且其他涉及參數(shù)的特征包含由參數(shù)表示的數(shù)據(jù)值的位數(shù)m;參數(shù)的字節(jié)數(shù);該參數(shù)是否表示一個(gè)壓縮的數(shù)據(jù)值。
      權(quán)利要求
      1.一種在處理系統(tǒng)中形成執(zhí)行指令的方法,所述方法包含(a)提供一個(gè)操作碼部分,用來(lái)確定被該處理器執(zhí)行的至少一次操作;以及(b)提供一個(gè)參數(shù)部分,它包含至少一個(gè)表示相應(yīng)數(shù)據(jù)值的參數(shù),所述參數(shù)部分還包含一個(gè)指示符來(lái)表示所述的至少一個(gè)參數(shù)的以下定義特征(i)由所述參數(shù)表示的數(shù)據(jù)值的位數(shù)(m);(ii)所述參數(shù)的字節(jié)數(shù);(iii)所述參數(shù)是否表示一個(gè)壓縮的數(shù)據(jù)值。
      2.如權(quán)利要求1所述的方法,其中參數(shù)部分包含至少一個(gè)下述類(lèi)型的參數(shù)(1)一個(gè)可壓縮、無(wú)符號(hào)、具有預(yù)定長(zhǎng)度的參數(shù);(2)一個(gè)可壓縮、有符號(hào)、具有預(yù)定長(zhǎng)度的參數(shù);
      3.如權(quán)利要求1所述的一種方法,其特征在于操作碼定義了參數(shù)部分中的參數(shù)數(shù)目。
      4.如權(quán)利要求1所述的一種方法,其特征在于操作碼定義了至少一個(gè)參數(shù)的未壓縮長(zhǎng)度。
      5.如權(quán)利要求1所述的一種方法,其特征在于操作碼定義了所述的至少一個(gè)參數(shù)是否包含符號(hào)。
      6.如權(quán)利要求1所述的一種方法,其特征在于該至少一個(gè)參數(shù)表示一個(gè)存儲(chǔ)器。
      7.如權(quán)利要求1所述的一種方法,其特征在于參數(shù)部分包含多個(gè)參數(shù),且操作碼部分確定所述參數(shù)的排列次序。
      8.如權(quán)利要求1所述的一種方法,其特征在于該至少一個(gè)參數(shù)包含一個(gè)位字段,以指示一個(gè)和參數(shù)有關(guān)的特征。
      9.如權(quán)利要求8所述的一種方法,其特征在于位字段表示至少一個(gè)(a)由該至少一個(gè)參數(shù)所表示的數(shù)據(jù)值的位數(shù);(b)該至少一個(gè)參數(shù)的字節(jié)數(shù);(c)該至少一個(gè)參數(shù)是否表示一個(gè)已壓縮的數(shù)據(jù)值。
      10.一種在處理系統(tǒng)中形成執(zhí)行指令的方法,所述方法包含a)提供一個(gè)操作碼部分,用來(lái)確定由該處理器執(zhí)行的至少一次操作;以及b)提供一個(gè)參數(shù)部分,它包含至少一個(gè)表示相應(yīng)的數(shù)據(jù)值的參數(shù),所述的參數(shù)部分還包含一個(gè)擴(kuò)展指示符。c)表示所述至少一個(gè)參數(shù)的壓縮狀態(tài)。
      11.如權(quán)利要求10所述的一種方法,其特征在于該至少一個(gè)參數(shù)包含單個(gè)字節(jié),其中包含擴(kuò)展指示符。
      12.如權(quán)利要求10所述的一種方法,其特征在于該至少一個(gè)參數(shù)包含多個(gè)字節(jié),所述字節(jié)的每一個(gè)都包含一個(gè)擴(kuò)展指示符。
      13.如權(quán)利要求10所述的一種方法,其特征在于該至少一個(gè)參數(shù)包含多個(gè)字節(jié),至少有一個(gè)所述字節(jié)包含一個(gè)擴(kuò)展指示符。
      全文摘要
      在處理系統(tǒng)中形成變長(zhǎng)度指令用于執(zhí)行。每個(gè)指令包含:一個(gè)參數(shù)部分,具有一個(gè)或者多個(gè)預(yù)定類(lèi)型的參數(shù);以及一個(gè)操作碼部分。操作碼部分指明要執(zhí)行的操作、指令中的參數(shù)數(shù)目、以及該參數(shù)的定義特征。該參數(shù)可以表示可壓縮的數(shù)據(jù),因此能夠減少指令中參數(shù)的大小。
      文檔編號(hào)G06F9/30GK1335958SQ00802561
      公開(kāi)日2002年2月13日 申請(qǐng)日期2000年8月30日 優(yōu)先權(quán)日1999年9月7日
      發(fā)明者W·L·薩維爾勒, K·羅斯 申請(qǐng)人:皇家菲利浦電子有限公司
      網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
      • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1