第1章、系統軟體 作者:陳鍾誠 旗標出版社.

Slides:



Advertisements
Similar presentations
定 格 入 格 破 格 —— 新诗仿写复习训练 仿照下列句子,再把 “ 人生 ” 比喻成 “ 大海 ”“ 天空 ” , 造两个句子。 如果说人生是一首优美的乐曲,那么痛苦则 是其中一个不可或缺的音符。 参考答案: 1 、如果说人生是一望无际的大海,那么挫折则 是其中一个骤然翻起的浪花。 2 、如果说人生是一片湛蓝的天空,那么失意则.
Advertisements

2014 学年广州市 “ 一师一优课、 一课一名师 ” 活动操作简介 广州市教育信息中心 2015 年 1 月 15 日.
实习期工作总结 述职人:孙伟 —— 个人简历 姓名:孙伟 毕业院校 : 内蒙古民族大学 专业:农业机械化及其自动化.
1 乌海职业技术学院机电工程系 王若东 副教授 乌海职业技术学院机电工程系 王若东 副教授 2007 年秋季乌海学院计算机类课程 (课程整体设计介绍)
第 3 章操作系统基础 3.1 操作系统概述 3.2 操作系统的功能模块 3.3 典型操作系统概述.
LOGO 计算机应用 课程简介. Contents 教学目的与要求 1 教学方法 2 教学内容 3 章节介绍 4 考核方式和考试介绍 5.
河北衡水中学 康新江 高效课堂与激情教育 河北衡水中学 康新江
课程介绍 大学计算机基础 基础理论篇(讲课20学时,10周) 学习指导与实训篇(上机12学时,6周) 上机安排(9-14周)
2015退伍士兵焊工专业 第一学期 课程名称:计算机基础(一).
C與C++ C++語言具有物件導向的功能,易於開發、撰寫與偵錯,成為重要系統的開發工具之一。
基础模块 模块一 程序设计基础 (一)开发环境部分.
第6章 计算机网络基础 信息技术基础.
廉政規範科業務說明 報告人:倪福華
黄岛区政府部门责任清单编制工作介绍 二〇一五年六月.
清华大学 罗念龙 2004年6月 集成学生系统 清华大学 罗念龙 2004年6月.
智学网账号登录 1、打开网页,在地址栏里输入 2、点击登录,输入用户名和密码,即可登录:
第1单元 操作系统概论 第一节 绪论 操作系统定义.
计算机基础赛项(ICT) 使用说明 金芥子教育.
计算机应用基础 项目 3-5 制作个人简历.
104學年度臺南區免試入學作業國中端說明會 臺南市政府教育局 104學年度臺南區高級中等學校免試入學委員會 日期:104年1月9日(五)
门店助手V3.1.0版 用户操作手册 广东蜂助手网络科技有限公司 2015年03月.
广西壮族自治区工商行政管理局 “守重”软件系统操作培训 2015年1月.
香港普通話研習社科技創意小學 周順強老師.
Linux基礎學習 課本:Ubuntu Linux 管理與架站實務 博碩文化出版發行.
计算机基础知识 阜宁县农业干部学校 二OO九年六月.
操作系统原理 Principles of Operating System
第1章 Linux概述 马丽洁.
新疆生产建设兵团 协同政务平台 主讲人:程志雄 各位领导,早上好,今天很高兴和大家一块学习协同办公系统。
資訊科技概論 第七章 – 電腦軟體概論.
计算机导论 苏州职业大学计算机工程系 徐卫英 QQ:
分析测试中心实验仪器 预约指南v1.0 合肥工业大学分析测试中心
營建自動化 -營建管理資訊化 授課老師:劉俊杰 副教授 中華民國89年9月27日.
操作题内容 文字录入 Windows XP操作 或 文件操作 PowerPoint2003操作 或 Excel2003操作
玉溪工业财贸学校副校长 示范校建设办公室主任 柏家渭 2014年5月13日
心靈補給站 你可以「活」的「更好」 輔導主任 陳正馨老師.
学习方法建议 首先应该有明确的学习动机,解决思想问题。 然后根据自己实际要有一个明确的学习目标。
名师工作室使用教程.
第一章、软件测试环境概述.
管理系统使用注意事项 1.每个事业单位只有一张唯一的专用光盘。但为防止事业单位专用光盘损坏,可以自行刻录一张新的光盘作为备份。用于网上登记的计算机必须有光驱才行、计算机必须是xp或更好版本的的操作系统,浏览器必须是IE6.0版本以上。 2.事业单位专用光盘中“网下填表与上网提交”功能未开通,待开通后再告知大家。
全国工会企事业资产统计系统操作说明 登录地址:http://qsyzc.acftu.org/ 或
申請土地徵收注意事項 內政部地政司 邱于蓉.
寫 作 教 學 6 電腦與我 時代改變,科技進步,電腦成為日常生活不可或缺的設備。我是二十一世紀的E世代少年,一隻滑鼠在手,樂趣無窮。
甘肃省城乡居民健康档案系统使用简介及意义
課程名稱:計算機概論 授課老師:李春雄 博士
Linux 的一些事儿 系统管理 宁波市高校慕课联盟课程
作業系統 第八章 記憶體管理.
兒童電腦入門 第一課 八月八日.
讲师:田家华 第1章 认识计算机 本章要点   计算机的发展 计算机的组成.
C++ Builder 6 程序设计 第一章 C++Builder 6概述.
永远的 Autotools ——GNU Build System 简介(一)
HedEx Lite产品介绍 轻松获取、使用华为文档
作業系統 (Operating System)
课程简介 《计算机应用基础》 与《微机操作》课程组 2019/1/16 课程简介.
付款作業錯誤態樣【出納組】 錯誤1~核銷文件備具不齊 錯誤2 ~戶名與系統不同 錯誤3 ~未輸發票號碼日期 錯誤4 ~受款人帳號輸錯
第二章 Linux简介 Linux概述 Linux系统的特点 Linux中使用的应用程序 Linux的组成 Linux版本介绍
武汉理工大学人事系统 职称评审资格审查培训
1 意见反馈与问题解答 4 1.
作業系統 第三章 作業系統結構.
中国移动电子采购与招标投标系统案例分析及注意事项
靜宜大學專用 PowerPoint 檔案 數位教材
第 3 章、組合語言 作者:陳鍾誠 旗標出版社.
全民参保软件培训 孙亚锋.
2004年以后竣工工程工程款支付情况调查系统 演 示 培 训
教 材 介 紹 靈活組合 愉快學習.
互联网+便捷退税 (外贸企业) 操作培训.
103學年度第1學期新北市 政府辦理弱勢幼兒教育津貼 作業說明會 承辦人員:塗彥凱(分機2800)
第1章、系統軟體 作者:陳鍾誠 旗標出版社.
计 算 机 应 用 基 础 潍坊学院 计算机工程学院 主讲人:李凤慧.
安全保密产品检测申请书 材料准备介绍.
第六章 产品选择、成本与生产能力.
Presentation transcript:

第1章、系統軟體 作者:陳鍾誠 旗標出版社

第1章、系統軟體 1.1 何謂系統程式? 1.2 系統程式與系統軟體 1.3 本書的章節架構 1.1 何謂系統程式? 1.2 系統程式與系統軟體 1.3 本書的章節架構 1.4 實務案例 (一):Dev C++開發環境 1.5 實務案例 (二):GNU 開發工具

1.1 何謂系統程式? System Software (系統軟體) System Programming (系統程式設計)

System Software (系統軟體) 何謂系統軟體? 設計給程式設計師使用的軟體, 就被稱為系統軟體 設計給一般大眾使用的軟體, 則稱為應用軟體。

系統軟體 v.s 應用軟體 應用軟體 系統軟體 試算表 組譯器 Excel 載入器 排版軟體 連結器 Word 巨集處理器 瀏覽器 編譯器 Internet Explorer Firefox Chrome 系統軟體 組譯器 載入器 連結器 巨集處理器 編譯器 直譯器 虛擬機

系統程式設計 (System Programming) 定義: 系統相關的程式設計技術,其中的系統指的是作業系 統或電腦系統。 作業系統層次的程式設計 Linux 系統程式 Windows 系統程式

作業系統相關的程式設計主題 行程管理 執行緒 行程通訊 並行控制 記憶體管理 檔案輸出入 驅動程式

電腦系統相關的程式設計主題 組合語言 C 語言 嵌入式系統

1.2 系統程式與系統軟體 高階語言  編譯器  組合語言 組合語言  組譯器  目的碼 目的碼  連結器  可執行檔 1.2 系統程式與系統軟體 高階語言  編譯器  組合語言 組合語言  組譯器  目的碼 目的碼  連結器  可執行檔 可執行檔  載入器  記憶體,開始執行

圖 1.1、程式的編譯、組譯、連結、載入之流程 高階語言 編譯器 系統軟體 組合語言 1.編譯器 2.組譯器 3. 連結器 系統程式 記憶體 組譯器 連結器 載入器 組合語言 目的檔 執行檔 系統軟體 1.編譯器 2.組譯器 3. 連結器 4.載入器 系統程式 1. 高階語言 2. 組合語言

從機器語言到組合語言 目的碼 (機器語言) 組譯器 組合語言

各種組合語言的指令 最近 (2000) (精簡指令CPU) 中期 (1990) (複雜指令CPU) 早期 (1980)

從組合語言到高階語言 範例 1.1 C 語言與組合語言的對應關係

C 語言 1972 年貝爾實驗室所發展出來的 C 語言 Ken Thompson 與 Dennis Ritchie (合稱 K & R) K &R 用 C 語言設計出 UNIX 作業系統 C 語言特別適合用來撰寫作業系統等低階程式,因此是當今 系統程式的主要語言。 C 語言可以進行記憶體映射輸出入,這讓 C 語言特別適合用 來撰寫嵌入式的系統程式

1.3 本書的章節架構 第 1 章 系統軟體 第 2 章 電腦的硬體結構 第 3 章 組合語言 第 4 章 組譯器 第 5 章 連結與載入 1.3 本書的章節架構 第 1 章 系統軟體 第 2 章 電腦的硬體結構 第 3 章 組合語言 第 4 章 組譯器 第 5 章 連結與載入 第 6 章 巨集處理器 第 7 章 高階語言 第 8 章 編譯器 第 9 章 虛擬機器 第 10 章 作業系統 第 11 章 嵌入式系統 第 12 章 系統軟體實作 導論 組合語言 高階語言 執行平台 實作『組譯器、編譯器、虛擬機器』

本書的章節導引圖 圖 1.2 本書的章節導引圖 目的檔 (第 5 章) 連結器 (第 5 章) 函式庫 (第 5 章) 連結器 (第 5 章) 函式庫 (第 5 章) 組譯器 (第 4 章) 編譯器 (第 8 章) 直譯器 (第 7 章) 高階 語言 (C) (第 7 章) 其他目的檔 載入器 (第 5 章) 執行 執行檔 (第 5 章) 虛擬機器 (第 9 章) 電腦的硬體結構 (第 2 章) 作業系統 (第 10 章) 組合語言 (第 3 章) 巨集處理器 (第6章) 系統軟體 (第 1 章) 嵌入式系統 (第 11 章) 系統軟體實作 (第 12 章) 圖 1.2 本書的章節導引圖

1.4 實務案例 (一):Dev C++開發環境 Dev C++ : Bloodshed Software 公司所設計的免費的開發工具 下載點:http://www.bloodshed.net/devcpp.html Dev C++ 使用 gcc 作為預設的編譯器。

圖 1.3 單一程式檔的Dev C++ 編譯執行畫面

1.5 實務案例 (二):GNU 開發工具 GNU 開發工具 由 GNU 組織所設計 包含 gcc 編譯器 as 組譯器 ld 連結器 make 專案建置工具 Linux 作業系統也是用 GNU 工具所開發完成的

如何使用 GNU 工具 在 Linux 當中 在 MS. Windows 中 預設就包含了 GNU 工具 安裝 Dev C++ 後就會有 GNU 工具,請參考附錄 D 的安裝方法。 安裝 Cygwin 也可以使用 GNU 工具,請參考附錄 E 的安裝方法。

圖 1.4 GNU工具使用的基本流程 ld gcc ar main.c sum.c printf.c putc.c kprintf.c main.o sum.o ld gcc printf.o putc.o kprintf.o ar libc.a libm.a executable

C 語言程式範例

使用 gcc 編譯 C 語言程式

使用 gcc 產生組合語言 使用 -S 參數可要求 gcc 產生組合語言

將 gcc 當成組譯器使用

同時組譯並連結

習題 請說明何謂系統軟體? 請列出你所知道的系統軟體。 請說明系統軟體與系統程式兩者有何區別。 請說明組合語言在系統軟體學習上的角色。 請說明 C 語言在系統程式上的用途。 請列出您所經常使用的程式語言,並說明其相關的系統軟體之用法。 請從網路下載Dev C++ 軟體,並參照附錄 D 的説明,安裝並使用 Dev C++ 撰寫 C 語言程式,並學習該軟體的用法。 請找出 Dev C++ 當中的GNU工具,並在設定好 PATH 環境變數後, 試用 gcc 指令編譯任意一個 C 語言程式 (設定方法請參考本書附錄 D)。