計算機軟件的基本組成

計算機軟件的基本組成

一, 計算機軟件的分類

軟件按其功能分類, 可分為系統軟件和應用軟件

圖解

在這里插入圖片描述

(1)系統軟件

系統軟件是一組保證計算機系統高效, 正確運行的基礎軟件, 軟件通常作為系統資源提供給用戶使用.
系統軟件主要有操作系統(OS), 數據庫管理系統(DBMS), 語言處理程序, 分布式軟件系統, 網絡軟件系統, 標準庫程序, 服務性程序等.

(2)應用軟件

應用系統是指用戶為解決某個應用領域中的各類問題而編制的程序, 如各種科學計算類程序, 工程設計類程序, 數據統計與處理程序等.

在本學科范疇內, 編寫諸如操作系統, 編譯程序等各種系統軟件的人員稱為系統程序員; 利用計算機及所支持的系統軟件來編寫解決具體應用問題的人員稱為應用程序員.

二, 三個級別的語言

三種機器語言分別是:

  1. 機器語言
  2. 匯編語言
  3. 高級語言

圖解

在這里插入圖片描述

注: 編譯器, 匯編器, 解釋器, 可統稱"翻譯程序".

三種機器語言的特點

  1. 機器語言, 也稱二進制代碼語言, 需要編程人員記憶每條指令的二進制編碼.機器語言是計算機唯一可以直接識別和執行的語言.
  2. 匯編語言, 匯編語言是用英文單詞或其縮寫代替二進制的指令代碼, 更容易為人們記憶和理解. 使用匯編語言編寫的程序, 必須經過一個稱為匯編程序的系統軟件翻譯, 將其轉換為機器語言的程序后, 才能在計算機的硬件系統上執行.
  3. 高級語言, 高級語言(如C, C++, Java等) 可以方便程序設計人員寫出解決問題的處理方案和解題過程的程序.通常高級語言需要經過編譯程序編譯成匯編語言程序, 然后經過匯編操作得到機器語言程序, 或直接由高級語言程序翻譯成機器語言程序.

三, 各種翻譯程序的概念

因為計算機無法直接理解和執行高級語言程序, 所以需要將高級語言程序轉換為機器語言程序, 通常把進行這種轉換的系統軟件稱翻譯程序.
翻譯程序有以下三類:
1), 匯編程序(匯編器): 將匯編語言程序翻譯成機器語言程序.
2), 解釋程序(解釋器): 將源程序中的語句按執行順序逐條翻譯成機器指令并立即執行.
3), 編譯程序(編譯器): 將高級語言程序翻譯成匯編語言或機器語言程序.

四, 軟件和硬件的邏輯功能等價性

硬件實現的往往是最基本的算術和邏輯運算功能, 而其他功能大多通過軟件的擴充得以實現.
對某一功能來說, 其既可以由硬件實現, 又可以由軟件實現, 從用戶的角度來看, 它們在功能上是等價的.
這一等價性被稱為軟/硬件邏輯功能的等價性.

例如, 浮點數運算既可以用專門的浮點運算器硬件實現, 又可以通過一段子程序實現, 這兩種方法在功能上完全等價, 不同的只是執行時間的長短而已, 顯然硬件實現的性能要優于軟件實現的性能.

軟件和硬件邏輯功能的等價性是計算機系統設計的重要依據, 軟件和硬件的功能分配及其界面的確定是計算機系統結構研究的重要內容. 當研制一臺計算機時, 設計者必須明確分配每一級的任務, 確定哪些功能使用硬件實現, 哪些功能使用軟件實現.
軟件和硬件功能界面的劃分是由設計目標, 性能價格比, 技術水平等綜合因素決定的.
在這里插入圖片描述

指令集體系結構(ISA)

軟件和硬件之間的界面. 設計計算機系統的ISA, 就是要定義一臺計算機可以支持哪些指令, 以及每條指令的作用是什么, 每條指令的用法是什么.

五, 總結

  • Q1, 計算機軟件的分類
    • 系統軟件
      • 管理計算機的硬件資源, 向上層應用程序提供服務

    • 應用軟件
      • 按應用場景需要編制唱的成的各種程序, 直接為用戶提供服務.

  • Q2, 三個級別的語言
    • 高級語言
    • 匯編語言
    • 機器語言
  • Q3, 三個級別的語言之間的轉換方式
    • 編譯程序(編譯器) – 將高級語言一次全部翻譯為匯編語言, 或者直接翻譯為機器語言
    • 匯編程序(匯編器) – 將匯編語言翻譯成機器語言
    • 解釋語言(解釋器) – 高級語言翻譯為機器語言(翻譯一句執行一句)
  • Q4, 軟件和硬件的看邏輯功能等價性
    • 同一個功能, 既可以用硬件實現, 也可以用軟件實現

  • Q5, 指令集體系結構(ISA)
    • ISA定義一臺計算機可以支持哪些指令, 以及每條指令的作用是什么, 每條指令的用法是什么.

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/906074.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/906074.shtml
英文地址,請注明出處:http://en.pswp.cn/news/906074.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

unity開發游戲實現角色篩選預覽

RenderTexture通俗解釋 RenderTexture就像是Unity中的"虛擬相機膠片",它可以: 捕獲3D內容:將3D場景或對象"拍照"記錄下來 實時更新:不是靜態圖片,而是動態視頻,角色可以動起來 用作…

Spring源碼主線全鏈路拆解:從啟動到關閉的完整生命周期

Spring源碼主線全鏈路拆解:從啟動到關閉的完整生命周期 一文看懂 Spring 框架從啟動到銷毀的主線流程,結合原理、源碼路徑與偽代碼三位一體,系統學習 Spring 底層機制。 1. 啟動入口與環境準備 原理說明 Spring Boot 應用入口是標準 Java 應…

SAP RF 移動屏幕定制

SAP RF 移動屏幕定制 ITSmobile 是 SAP 當前將移動設備連接到 SAP 系統的技術基礎。它基于 SAP Internet Transaction Server (ITS),從 Netweaver 2004 開始作為 Netweaver 平臺的一部分提供。ITSmobile 提供了一個框架,用于為任何 SAP 事務生成基于 HT…

Spark,數據提取和保存

以下是使用 Spark 進行數據提取(讀取)和保存(寫入)的常見場景及代碼示例(基于 Scala/Java/Python,不含圖片操作): 一、數據提取(讀取) 1. 讀取文件數據&a…

如何用mockito+junit測試代碼

Mockito 是一個流行的 Java 模擬測試框架,用于創建和管理測試中的模擬對象(mock objects)。它可以幫助開發者編寫干凈、可維護的單元測試,特別是在需要隔離被測組件與其他依賴項時。 目錄 核心概念 1. 模擬對象(Mock Objects) 2. 打樁(Stubbing) 3. 驗…

最新缺陷檢測模型:EPSC-YOLO(YOLOV9改進)

目錄 引言:工業缺陷檢測的挑戰與突破 一、EPSC-YOLO整體架構解析 二、核心模塊技術解析 1. EMA多尺度注意力模塊:讓模型"看得更全面" 2. PyConv金字塔卷積:多尺度特征提取利器 3. CISBA模塊:通道-空間注意力再進化 4. Soft-NMS:更智能的重疊框處理 三、實…

【Linux網絡與網絡編程】12.NAT技術內網穿透代理服務

1. NAT技術 之前我們說到過 IPv4 協議中IP 地址數量不充足的問題可以使用 NAT 技術來解決。還提到過本地主機向公網中的一個服務器發起了一個網絡請求,服務器是怎么將應答返回到該本地主機呢?(如何進行內網轉發?) 這就…

uniapp的適配方式

文章目錄 前言? 一、核心適配方式對比📏 二、rpx 單位:uni-app 的核心適配機制🧱 三、默認設計稿適配(750寬)🔁 四、字體 & 屏幕密度適配🛠 五、特殊平臺適配(底部安全區、劉海…

JAVA EE(進階)_進階的開端

別放棄浸透淚水的昨天,晨光已為明天掀開新篇 ——陳長生. ?主頁:陳長生.-CSDN博客? 📕上一篇:JAVA EE_HTTP-CSDN博客 1.什么是Java EE Java EE(Java Pla…

SQL腳本規范

主要作用:數據庫的備份和遷移 SQL腳本規范 每一個sql語句必須與;結束 腳本結構: { 刪庫,建庫 刪表,建表 插入初始數據 } 建庫語法: CREATE DATABASE 數據庫名CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; CHARA…

std::ratio<1,1000> 是什么意思?

author: hjjdebug date: 2025年 05月 14日 星期三 09:45:24 CST description: std::ratio<1,1000> 是什么意思&#xff1f; 文章目錄 1. 它是一種數值嗎&#xff1f;2. 它是一種類型嗎&#xff1f;3. std:ratio 是什么呢&#xff1f;4. 分析一個展開后的模板函數5.小結: …

測試--測試分類 (白盒 黑盒 單元 集成)

一、按照測試目標分類&#xff08;測試目的是什么&#xff09; 主類別細分說明1. 界面測試UI內容完整性、一致性、準確性、友好性&#xff0c;布局排版合理性&#xff0c;控件可用性等2. 功能測試檢查軟件功能是否符合需求說明書&#xff0c;常用黑盒方法&#xff1a;邊界值、…

整理了 2009 - 2025 年的【199 管綜真題 + 解析】PDF,全套共 34 份文件

每年真題原卷 ? 每年詳細解析 ? &#x1f4c2;【管綜真題 2009-2025】 &#x1f4c2;【管綜解析 2009-2025】 目錄樹&#xff1a; ├── 2009-2025管綜真題 PDF │ ├── 2009年199管綜真題.pdf │ ├── 2010年199管綜真題.pdf │ ├── 2011年199管綜真題.pd…

用golang實現二叉搜索樹(BST)

目錄 一、概念、性質二、二叉搜索樹的實現1. 結構2. 查找3. 插入4. 刪除5. 中序遍歷 中序前驅/后繼結點 一、概念、性質 二叉搜索樹&#xff08;Binary Search Tree&#xff09;&#xff0c;簡寫BST&#xff0c;又稱為二叉查找樹 它滿足&#xff1a; 空樹是一顆二叉搜索樹對…

自動化:批量文件重命名

自動化&#xff1a;批量文件重命名 1、前言 2、效果圖 3、源碼 一、前言 今天來分享一款好玩的自動化腳&#xff1a;批量文件重命名 有時候呢&#xff0c;你的文件被下載下來文件名都是亂七八糟毫無規律&#xff0c;但是當時你下載的時候沒辦法重名或者你又不想另存為重新重…

VueUse/Core:提升Vue開發效率的實用工具庫

文章目錄 引言什么是VueUse/Core&#xff1f;為什么選擇VueUse/Core&#xff1f;核心功能詳解1. 狀態管理2. 元素操作3. 實用工具函數4. 瀏覽器API封裝5. 傳感器相關 實戰示例&#xff1a;構建一個拖拽上傳組件性能優化技巧與原生實現對比常見問題解答總結 引言 在現代前端開發…

stm32 ADC單通道轉換

stm32c8t6僅有12位分辨率 1、單次轉換 非掃描 1、初始化 void Ad_Init() {RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);RCC_APB2PeriphClockCmd(RCC_APB2Periph_ADC1, ENABLE);//配置ADCCLK時鐘分頻,ADC的輸入時鐘不得超過14MHzRCC_ADCCLKConfig(RCC_PCLK2_Div6);G…

2KW壓縮機驅動參考設計【SCH篇】

實物展示&#xff1a; ACDC: VAC和VAC-為交流電壓檢測&#xff1a; 1.C33 C34作為Y電容走線寬度要求&#xff1a; Y電容一般用于L/N到地之間&#xff08;L-PE 或 N-PE&#xff09;&#xff0c;主要作用是抑制共模干擾。其走線的電流非常小&#xff0c;推薦使用 ≥ 1mm 寬的走…

python05——循環結構

1、while循環 n0 #初始條件 while n<5: #判斷print(hello python) #要重復執行的代碼print(n) #注意同級代碼縮進相同n1 #計數器結果&#xff1a; hello python 0 hello python 1 hello python 2 hello python 3 hello python 4 hello python 5 #求階乘和 sum0 n1 whil…

LINUX編譯、運行、測試lowcoder_CN

參考 二者沒有太大差異。 LINUX編譯、運行、測試lowcoder-CSDN博客 下載 git clone https://github.com/mousheng/lowcoder_CN 或 git clone https://gitcode.com/gh_mirrors/lo/lowcoder_CNcd lowcoder_CN三個模塊 node-service api-service client 每個模塊都有自己的…