chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

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

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

Ada Watch:為工作找到合適的編程語言

星星科技指導(dǎo)員 ? 來源:嵌入式計(jì)算設(shè)計(jì) ? 作者:GREG GICCA ? 2022-11-01 09:31 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

Ada 是一種強(qiáng)類型語言,是開發(fā)高可靠性程序的自然選擇。一些語言,如C,擅長低級編程,但不能解決其他挑戰(zhàn) - 正如我之前的博客所介紹的那樣。您需要為工作選擇合適的工具。與其對每個問題使用一種語言或一種工具,不如為工程師提供多種選擇來開發(fā)高可靠性軟件——這正是 Ada 的亮點(diǎn)。

我們可以通過高層次的視角來說明這一點(diǎn),而無需深入研究特定的語言細(xì)節(jié)和個人偏好。第一步是研究強(qiáng)類型語言如何避免難以檢測的錯誤和不正確的程序操作。

Ada在高可靠性應(yīng)用中的優(yōu)勢

Ada 的許多高可靠性軟件開發(fā)功能并非 Ada 所獨(dú)有,可以在各種其他(強(qiáng)類型)編程語言中找到。Ada的獨(dú)特之處在于所有這些功能都可以在一種編程語言中找到。

Ada 是強(qiáng)類型。簡單來說,這意味著變量、常量或?qū)ο蟊仨氃谑褂弥奥暶?。但是,它也允許語言(編譯器)靜態(tài)檢查使用此類標(biāo)識符的有效性。

此設(shè)計(jì)功能的一個有趣效果是,可以將拼寫錯誤和拼寫錯誤檢測為錯誤并為開發(fā)人員標(biāo)記。任何人類的寫作努力都會有錯誤,隨著總寫作工作量的增加,錯誤的數(shù)量也會增加。由于許多拼寫錯誤對于不經(jīng)意的觀察者來說看起來是正確的(或者它們一開始就不會發(fā)生),讓語言檢測到這些是非常有價(jià)值的。

假設(shè)程序員打算將車輛位置“L”計(jì)算為實(shí)數(shù),并將整數(shù)索引“I”用于其他目的。在 Ada 中,如果使用變量“I”而不是“L”,則它將被標(biāo)記為操作的錯誤類型。在 C 中,索引“I”將被隱式轉(zhuǎn)換(“強(qiáng)制轉(zhuǎn)換”)為表達(dá)式中的實(shí)值,從而引入錯誤。像這樣的簡單錯誤可能保持隱藏,難以發(fā)現(xiàn),并且對軟件的預(yù)期含義有潛移默化的變化。例如,“位置”應(yīng)該是程序中此時的車輛位置,但索引“I”是不相關(guān)的。

Ada 支持將程序規(guī)范與實(shí)現(xiàn)分離的概念。該語言支持外部程序單元可見和調(diào)用的程序規(guī)范的定義。這定義了單元或子程序的名稱及其參數(shù)、類型等。該規(guī)范對使用“with”構(gòu)造的調(diào)用方可見。實(shí)現(xiàn)或正文可能位于單獨(dú)的文件中,并包含規(guī)范的完整算法實(shí)現(xiàn)。此單元在語義上始終對調(diào)用方不可見。因此,調(diào)用方無法更改算法的內(nèi)部詳細(xì)信息。

這是Ada語言的一個關(guān)鍵特征,因?yàn)榭梢詥为?dú)開發(fā),測試和驗(yàn)證單元集合,而不必?fù)?dān)心組合時會發(fā)生副作用。這允許以安全和可擴(kuò)展的方式構(gòu)建分層或組件架構(gòu)。Ada 在這方面具有其他功能,但此基本概念對于開發(fā)高可靠性應(yīng)用程序至關(guān)重要。具有“#Include”樣式的其他語言功能在語義上將引用單元的源文本“包含”到引用/調(diào)用單元的源中。這使得所有內(nèi)部詳細(xì)信息對調(diào)用方可見,并允許發(fā)生意外或有目的的副作用。在小程序中,可以手動檢測對這些內(nèi)部細(xì)節(jié)的操縱。讀者可以看到,調(diào)用方中的拼寫錯誤可能會意外引用并更改被調(diào)用單元中的內(nèi)部值(開發(fā)人員鍵入的“X”未在本地聲明,但最終在所包含的單元中引用了“X”)。再一次,在較大的程序中,像這樣的簡單引用可能保持隱藏狀態(tài),難以發(fā)現(xiàn),并且對軟件的預(yù)期含義有隱蔽的變化。

通過結(jié)合這兩個簡單的功能,語言還可以檢查兩個標(biāo)識符是否可以在表達(dá)式中一起使用。假設(shè)兩個變量“A”和B“聲明為:

? A 和 B 是整數(shù)類型? A 是整數(shù),B 是顏色類型

加號(“+”)是一個子程序,具有定義數(shù)量的參數(shù)輸入,具有特定類型,具有特定的返回值類型。是否有 1 “+” 1 (A+B) 的操作“+”?是否有 1“+” 藍(lán)色 (A+B) 的操作“+”?在 C 語言的情況下,這兩個表達(dá)式都可能是有效的,但它們是什么意思?在 Ada 的情況下,第一個表達(dá)式有效,但第二個表達(dá)式無效。同樣,此類錯誤在開發(fā)生命周期的早期就被發(fā)現(xiàn),在那里它們很容易被廉價(jià)地發(fā)現(xiàn)和糾正。

我只概述了 Ada 的一些非常基本功能的一些高級優(yōu)勢,因此可以在直觀的層面上理解它們,為什么這些使程序更容易開發(fā)而沒有錯誤。Ada 語言還有更多有助于開發(fā)高可靠性程序的功能,我鼓勵您自己探索和測試它們。

審核編輯:郭婷

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

    關(guān)注

    10

    文章

    1965

    瀏覽量

    39877
  • 編譯器
    +關(guān)注

    關(guān)注

    1

    文章

    1672

    瀏覽量

    51915
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    深入解析ADA4356:可編程跨阻電流轉(zhuǎn)比特接收器μModule

    深入解析ADA4356:可編程跨阻電流轉(zhuǎn)比特接收器μModule 在電子設(shè)計(jì)領(lǐng)域,高性能的數(shù)據(jù)采集模塊一直是工程師們追求的目標(biāo)。ADA4356作為一款可編程跨阻、電流轉(zhuǎn)比特接收器μMo
    的頭像 發(fā)表于 03-25 16:00 ?154次閱讀

    低功耗高性能之選:ADA4505-1放大器深度解析

    低功耗高性能之選:ADA4505系列放大器深度解析 在電子工程師的日常設(shè)計(jì)工作中,選擇合適的放大器至關(guān)重要,尤其是在低電壓、電池供電的應(yīng)用場景中,對放大器的性能和功耗有著極高的要求。今天,我們就來
    的頭像 發(fā)表于 01-23 10:50 ?323次閱讀

    深入剖析ADA4084系列運(yùn)放:特性、應(yīng)用與設(shè)計(jì)要點(diǎn)

    深入剖析ADA4084系列運(yùn)放:特性、應(yīng)用與設(shè)計(jì)要點(diǎn) 作為電子工程師,在設(shè)計(jì)電路時,選擇合適的運(yùn)算放大器至關(guān)重要。今天,我們就來詳細(xì)探討一下Analog Devices公司推出的ADA
    的頭像 發(fā)表于 01-22 15:20 ?304次閱讀

    深入解析ADA4522-4運(yùn)放:高精度與高性能的完美結(jié)合

    深入解析ADA4522系列運(yùn)放:高精度與高性能的完美結(jié)合 在電子工程師的日常設(shè)計(jì)工作中,選擇一款合適的運(yùn)算放大器至關(guān)重要。它直接影響著整個電路的性能和穩(wěn)定性。今天,我們就來深入探討一下Analog
    的頭像 發(fā)表于 01-22 09:25 ?442次閱讀

    深入解析ADA4255:零漂移、高壓可編程增益儀表放大器

    深入解析ADA4255:零漂移、高壓可編程增益儀表放大器 在工業(yè)和數(shù)據(jù)采集領(lǐng)域,對高精度、高性能儀表放大器的需求日益增長。ADA4255作為一款零漂移、高壓可編程增益儀表放大器,憑借其
    的頭像 發(fā)表于 01-15 17:30 ?828次閱讀

    深入解析ADA4254:零漂移可編程增益儀表放大器的卓越性能與應(yīng)用

    (PGIA),工程師們提供了出色的解決方案。本文將深入剖析ADA4254的特性、工作原理、應(yīng)用場景以及寄存器配置等方面,幫助工程師更好地理解和應(yīng)用這款產(chǎn)品。 文件下載: ADA425
    的頭像 發(fā)表于 01-15 17:25 ?657次閱讀

    深入剖析ADA4351 - 2:精密可編程增益跨阻放大器的卓越之選

    深入剖析ADA4351 - 2:精密可編程增益跨阻放大器的卓越之選 在電子設(shè)計(jì)領(lǐng)域,對于高精度電流測量和信號處理的需求日益增長。ADA4351 - 2作為一款緊湊、雙通道、精密的可編程
    的頭像 發(fā)表于 01-15 11:35 ?506次閱讀

    探究高性能放大器ADA4352 - 2:特性、原理及應(yīng)用全解析

    探究高性能放大器ADA4352 - 2:特性、原理及應(yīng)用全解析 在電子工程師的日常工作中,選擇一款合適的放大器對于實(shí)現(xiàn)精確的信號處理至關(guān)重要。今天我們要深入探討的是ADI公司的ADA4
    的頭像 發(fā)表于 01-15 11:35 ?390次閱讀

    雷達(dá)接收路徑AFE:ADA8282深度解析

    雷達(dá)接收路徑AFE:ADA8282深度解析 在電子工程師的日常設(shè)計(jì)中,雷達(dá)系統(tǒng)選擇合適的接收路徑AFE(模擬前端)至關(guān)重要。今天我們就來深入剖析Analog Devices推出的ADA
    的頭像 發(fā)表于 01-14 11:20 ?588次閱讀

    超低失真差分 ADC 驅(qū)動器 ADA4938-1/ADA4938-2 深度解析

    超低失真差分 ADC 驅(qū)動器 ADA4938-1/ADA4938-2 深度解析 作為電子工程師,在進(jìn)行硬件設(shè)計(jì)開發(fā)時,選擇合適的 ADC 驅(qū)動器至關(guān)重要。今天我們就來詳細(xì)探討一下 Analog
    的頭像 發(fā)表于 01-13 09:20 ?536次閱讀

    超低失真差分ADC驅(qū)動器ADA4937-1/ADA4937-2:高性能之選

    超低失真差分ADC驅(qū)動器ADA4937-1/ADA4937-2:高性能之選 作為電子工程師,在設(shè)計(jì)高性能數(shù)據(jù)采集和信號處理系統(tǒng)時,選擇合適的ADC驅(qū)動器至關(guān)重要。ADA
    的頭像 發(fā)表于 01-12 17:25 ?577次閱讀

    超低失真電流反饋差分 ADC 驅(qū)動器 ADA4927-1/ADA4927-2 深度剖析

    超低失真電流反饋差分 ADC 驅(qū)動器 ADA4927-1/ADA4927-2 深度剖析 在電子工程師的日常設(shè)計(jì)工作中,選擇合適的 ADC 驅(qū)動器至關(guān)重要。今天,我們就來深入了解一款性能
    的頭像 發(fā)表于 01-12 15:30 ?446次閱讀

    低電壓ADC的超低噪聲驅(qū)動器ADA4930-1/ADA4930-2深度解析

    低電壓ADC的超低噪聲驅(qū)動器ADA4930-1/ADA4930-2深度解析 在電子設(shè)計(jì)領(lǐng)域,高性能ADC選擇合適的驅(qū)動器至關(guān)重要。ADA4
    的頭像 發(fā)表于 01-12 15:25 ?472次閱讀

    C語言編程技巧

    設(shè)計(jì),分層開發(fā)代碼,便于理解和維護(hù)。 ?8、避免使用GOTO語句?:盡管GOTO語句在某些情況下仍然有用,但現(xiàn)代編程更傾向于使用函數(shù)和循環(huán)控制結(jié)構(gòu),以提高代碼的可讀性和維護(hù)性。 ?9、利用C語言的靈活性
    發(fā)表于 11-27 06:46

    Analog Devices Inc. ADA4351-2精密可編程增益跨阻抗放大器數(shù)據(jù)手冊

    ,可使用兩個用戶可選的外部電阻器對增益進(jìn)行編程,以提供靈活、功能齊全的緊湊型PGTIA解決方案。獨(dú)立的模擬和數(shù)字電源允許ADA4351-2的放大器在雙極電源下工作,而集成的邏輯電平轉(zhuǎn)換功能允許數(shù)字接口保持
    的頭像 發(fā)表于 06-11 13:56 ?1120次閱讀
    Analog Devices Inc. <b class='flag-5'>ADA</b>4351-2精密可<b class='flag-5'>編程</b>增益跨阻抗放大器數(shù)據(jù)手冊