0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線(xiàn)課程
  • 觀(guān)看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

你能解釋一下類(lèi)型可擴(kuò)展性在PER中是如何工作的嗎

工程師鄧生 ? 來(lái)源:哲想軟件 ? 作者:哲想軟件 ? 2022-09-02 09:36 ? 次閱讀

16、在類(lèi)型定義和信息對(duì)象集中使用擴(kuò)展標(biāo)記有什么區(qū)別?擴(kuò)展標(biāo)記是否不可見(jiàn)?

擴(kuò)展標(biāo)記就類(lèi)型定義而言是不可見(jiàn)的,但就簡(jiǎn)單表約束和組件關(guān)系約束而言并非不可見(jiàn)。

類(lèi)型本身是可擴(kuò)展的,與限制它是可擴(kuò)展的對(duì)象集之間是有區(qū)別的。在類(lèi)型是可擴(kuò)展的情況下,它天生可以采用可擴(kuò)展約束允許的任何值。例如,

INTEGER(1..8, ...)

可以隨時(shí)假設(shè)任何有效值。將此與使用簡(jiǎn)單表約束進(jìn)行約束的 INTEGER類(lèi)型進(jìn)行對(duì)比,在這種類(lèi)型中,此類(lèi)類(lèi)型只能假定在該類(lèi)型被編碼/解碼時(shí)恰好包含在信息對(duì)象集中的那些值。隨著程序的運(yùn)行,這可能會(huì)隨著時(shí)間的推移而變化,因?yàn)榭蓴U(kuò)展信息對(duì)象集中的對(duì)象集可能會(huì)在運(yùn)行時(shí)發(fā)生變化。

在BER、DER和 CER的情況下,這種區(qū)別不太重要,其中類(lèi)型的可擴(kuò)展性在其編碼方式中不發(fā)揮作用,但在PER 中起主要作用。在 PER 中,使用擴(kuò)展標(biāo)記“...”定義的類(lèi)型的值使用1 位前綴進(jìn)行編碼,當(dāng)設(shè)置為0 時(shí),意味著后面的值在擴(kuò)展根中,因此以?xún)?yōu)化的形式編碼。(例如,上面示例中的值 1-8 將被編碼為3 位)。但是,當(dāng)設(shè)置為 1 時(shí),意味著后面的值以更通用的形式編碼。(例如,上例中不在 1-8 范圍內(nèi)的值占用16 位或更多位)。

17、你能解釋一下類(lèi)型可擴(kuò)展性在PER 中是如何工作的嗎?

考慮以下兩個(gè)ASN.1 語(yǔ)法定義:

A::= SEQUENCE { --defined in v1

f1BOOLEAN,

f2BOOLEAN,

...,

}

A::= SEQUENCE { --defined in v2

f1BOOLEAN,

f2BOOLEAN,

...,

e1BOOLEAN OPTIONAL,

e2BOOLEAN

}

類(lèi)型可擴(kuò)展性背后的目的是允許不理解新字段的V1 應(yīng)用程序接收具有它無(wú)法識(shí)別的字段的V2 消息,并將它們視為由V1 應(yīng)用程序發(fā)送,同樣,對(duì)于V2 應(yīng)用程序來(lái)說(shuō)接收缺少字段的 V1 消息。如果 V2 應(yīng)用程序收到缺少?gòu)?qiáng)制擴(kuò)展添加的消息,它可以安全地假定該消息是由V1 應(yīng)用程序發(fā)起的。

只有在擴(kuò)展附加位圖中有一個(gè)位表示存在/不存在哪些擴(kuò)展附加值時(shí),才必須對(duì)擴(kuò)展標(biāo)記之后的強(qiáng)制字段進(jìn)行編碼。因此,在強(qiáng)制擴(kuò)展附加 y 之后定義了擴(kuò)展附加x,并且 x的值存在于編碼中,那么y 的值必須存在。此外,如果強(qiáng)制擴(kuò)展附加 y 是SEQUENCE 中的最后一個(gè)組件,并且在擴(kuò)展附加位圖中存在一個(gè)位,則該位必須設(shè)置為1,因?yàn)樵撐坏拇嬖诒砻飨⒌陌l(fā)起者知道這個(gè)擴(kuò)展添加,因此它的存在是強(qiáng)制性的。只有當(dāng)消息是從未定義強(qiáng)制擴(kuò)展添加的早期版本的消息定義中繼時(shí),才可以省略它(在這種情況下,擴(kuò)展添加位圖中將沒(méi)有位)。ITU-T 建議X.680(2008) 25.15 注2 中指出了這一點(diǎn):

作為擴(kuò)展添加但不包含在“ExtensionAdditionGroup”中的“ComponentType”如果未標(biāo)記為OPTIONAL 或DEFAULT,則應(yīng)始終對(duì)其進(jìn)行編碼,除非抽象值是從使用較早版本抽象語(yǔ)法的發(fā)送者中繼的其中未定義“ComponentType”。

換句話(huà)說(shuō),PER將標(biāo)記為 OPTIONAL的擴(kuò)展添加與非 OPTIONAL的擴(kuò)展添加完全相同。



審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀(guān)點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 編碼
    +關(guān)注

    關(guān)注

    6

    文章

    921

    瀏覽量

    54714
  • CeR
    CeR
    +關(guān)注

    關(guān)注

    0

    文章

    4

    瀏覽量

    7261

原文標(biāo)題:?OSS Nokalva:ASN.1問(wèn)答時(shí)間(4)

文章出處:【微信號(hào):哲想軟件,微信公眾號(hào):哲想軟件】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    RC4580IDR放大器的工作溫度是多少?

    Information確標(biāo)注都是-40~85度,這個(gè)是什么意思?能解釋一下嗎? 還有,我用的是RC4580IDR,工作溫度最高多少?如果功耗只有300mW,最高溫度能到多少? Package Information
    發(fā)表于 09-04 07:55

    使用低成本MSPM0 MCU無(wú)線(xiàn)電動(dòng)工具和園藝工具實(shí)現(xiàn)擴(kuò)展性

    電子發(fā)燒友網(wǎng)站提供《使用低成本MSPM0 MCU無(wú)線(xiàn)電動(dòng)工具和園藝工具實(shí)現(xiàn)擴(kuò)展性.pdf》資料免費(fèi)下載
    發(fā)表于 09-02 11:47 ?0次下載
    使用低成本MSPM0 MCU<b class='flag-5'>在</b>無(wú)線(xiàn)電動(dòng)工具和園藝工具<b class='flag-5'>中</b>實(shí)現(xiàn)<b class='flag-5'>可</b><b class='flag-5'>擴(kuò)展性</b>

    來(lái)發(fā)干貨,篇文章教會(huì)如何利用PCIe擴(kuò)展SSD硬盤(pán)存儲(chǔ)

    擴(kuò)展能力,眾多領(lǐng)域熠熠生輝。對(duì)于追求極致性能與擴(kuò)展性的服務(wù)器愛(ài)好者而言,主板上普遍配備的至少個(gè)PCIe插槽,無(wú)疑為他們提供了個(gè)理想的接
    的頭像 發(fā)表于 08-02 16:02 ?594次閱讀
    來(lái)<b class='flag-5'>一</b>發(fā)干貨,<b class='flag-5'>一</b>篇文章教會(huì)<b class='flag-5'>你</b>如何利用PCIe<b class='flag-5'>擴(kuò)展</b>SSD硬盤(pán)存儲(chǔ)

    請(qǐng)問(wèn)CYW20829的HVDI參數(shù)指的是什么?

    嗨, CYW20829 數(shù)據(jù)表第 5.6.2 節(jié) "電壓監(jiān)控器," 列出了 HVDI 等參數(shù)。 您能解釋一下 HVDI 代表什么嗎? 此外,我還想知道如何設(shè)置該參數(shù)值,以及是否可以通過(guò) Modustoo
    發(fā)表于 07-24 07:20

    請(qǐng)問(wèn)espconn_mesh_is_root_candidate()具體是什么功能?

    mesh API沒(méi)有找到espconn_mesh_is_root_candidate()的說(shuō)明,但是meshdemo,如果是第次e
    發(fā)表于 07-11 07:51

    為CYUSB3KIT-004 EZ-USB SX3開(kāi)發(fā)套件供電,將圖像格式更改為Y16并使用Y16刻錄配置時(shí),不起作用的原因?

    嗨, 我為 CYUSB3KIT-004 EZ-USB SX3 開(kāi)發(fā)套件供電,當(dāng)我將圖像格式更改為 Y16 并使用 Y16 刻錄配置時(shí),它不起作用。 能解釋一下原因嗎? 對(duì)我們來(lái)說(shuō),與 Y16 合作非常重要。 它只能使用 YUV2。
    發(fā)表于 07-04 07:01

    同步從fifo的例程,如何理解U2P和P2U的工作方式?

    我想問(wèn)一下在同步從fifo的例程,如何理解U2P和P2U的工作方式,官方的文檔解釋有些抽象 如果FPGA通過(guò)FX3實(shí)現(xiàn)數(shù)據(jù)向PC的傳輸?shù)脑?huà),通過(guò)GPIF II 接口將數(shù)據(jù)放進(jìn)去
    發(fā)表于 02-28 06:47

    NMITC377是如何運(yùn)作的?

    NMI TC377 是如何運(yùn)作的。 旦請(qǐng)求了 NMI。 NMI 處理程序被調(diào)用。 但是這微控制器
    發(fā)表于 01-30 08:08

    分布式大屏控制系統(tǒng)的擴(kuò)展性設(shè)計(jì)

    分布式大屏控制系統(tǒng)的擴(kuò)展性設(shè)計(jì)是確保系統(tǒng)能夠適應(yīng)不斷增長(zhǎng)的需求和未來(lái)發(fā)展的關(guān)鍵因素。以下是擴(kuò)展性設(shè)計(jì)的幾個(gè)方面: 模塊化設(shè)計(jì):將系統(tǒng)劃分為多個(gè)模塊,每個(gè)模塊具有獨(dú)立的功能和接口。這
    的頭像 發(fā)表于 01-29 14:46 ?488次閱讀

    DSADC和普通ADC有什么區(qū)別嗎?

    你好, 如您所知,對(duì)于 SAL-TC389QP-160F300S AE MCU,DSADC 對(duì) FuSa 很重要。 我不明白如何出于安全目的使用 DSADC 和 EDSADC。 能解釋一下 DSADC 和普通 ADC 有什么區(qū)別嗎?以及如何出于安全目的使用?
    發(fā)表于 01-19 06:18

    MEMS壓阻式壓力傳感器這些知識(shí)都了解嗎

    大氣壓是我們經(jīng)常聽(tīng)到的個(gè)術(shù)語(yǔ)。您能解釋一下它是什么以及它與壓力傳感器的相關(guān)性嗎?
    發(fā)表于 01-02 14:42 ?642次閱讀
    MEMS壓阻式壓力傳感器這些知識(shí)<b class='flag-5'>你</b>都了解嗎

    三星攜手紅帽真實(shí)用戶(hù)環(huán)境驗(yàn)證CXL內(nèi)存技術(shù)

    CXL憑借其統(tǒng)的接口標(biāo)準(zhǔn),通過(guò)PCIe接口連接各類(lèi)處理器如CPU、GPU及內(nèi)存設(shè)備,有效解決了當(dāng)前系統(tǒng)速度、延遲和擴(kuò)展性上所面臨的瓶頸。
    的頭像 發(fā)表于 12-27 10:45 ?437次閱讀

    AD7134的SPI控制時(shí)序,STATUS是什么意思?

    AD7134的SPI控制時(shí)序,這個(gè) STATUS在手冊(cè)沒(méi)有介紹,只介紹數(shù)據(jù)接口的標(biāo)頭,如下圖所示: 工程師能不能解釋一下?
    發(fā)表于 11-30 07:44

    506評(píng)估板上AD轉(zhuǎn)換輸入引腳之前都有個(gè)放大器電路,能解釋一下具體作用嗎?

    506評(píng)估板上AD轉(zhuǎn)換輸入引腳之前都有個(gè)放大器電路,能解釋一下具體作用嗎?R28有什么作用?
    發(fā)表于 11-24 07:06

    求助,關(guān)于mdk5分散加載文件的問(wèn)題

    有沒(méi)有人能解釋一下,分散加載文件應(yīng)該怎么寫(xiě)
    發(fā)表于 11-02 07:23