教材 微型计算机与接口技术 ( 第二版 ) 科学出版社楼顺天, 周佳社, 张伟涛编著

Similar documents
Introduction to Computer Systems /18-243, spring st Lecture, Jan. 12th

数字电子技术基础 ( 第五版 ) 清华大学电子学教研组编阎石主编

课程目标 本课程是学习和掌握微机硬件知识和汇编语言程序设计的入门课程, 主要内容包括 : 16 位微型计算机的基本工作原理 汇编语言程序设计 微型计算机接口技术 32 位微机的原理 目的 : 通过本课程的学习, 深入了解微型计算机的基本结构, 掌握汇编语言编程方法和接口技术的设计能力, 熟悉 16/

微机第02章1(指令寻址)

Microsoft Word - em78 sub program.doc

2 数字电路与逻辑设计 ( 第 2 版 ) 制数的不同位置时, 所代表的数值是不同的 例如十进制数 1961 可写成展开式为 (1961) 其中,10 称为基数, 称为各位数的 权 十进制数个位的权为

微机原理及接口技术 入思维领域 年 英国数学家图灵 * 提出了著名的 图灵机 的模型 探讨了计算机的基本概念 证明了通用数字计算机是能够制造出来的 为了纪念图灵对计算机科学的重大贡献 美国计算机协会设立了图灵奖 每年授予在计算机科学领域做出特殊贡献的人 * 年 月 在美国宾夕法尼亚大学的莫尔学院 物

微型计算机原理与应用


PowerPoint Template

Microsoft Word - zw

计算机组成与系统结构

L3 data representation

数值代数 夏银华 中国科学技术大学


学年本科教学和思政工作情况汇报

4.C ( 详细解析见视频课程 绝对值 01 约 21 分 15 秒处 ) 5.E ( 详细解析见视频课程 绝对值 01 约 32 分 05 秒处 ) 6.D ( 详细解析见视频课程 绝对值 02 约 4 分 28 秒处 ) 7.C ( 详细解析见视频课程 绝对值 02 约 14 分 05 秒处 )

3.3.2 算术运算指令 数据类型 : 无符号和有符号整数 无符号数又分成 : 无符号二进制数 ; 无符号压缩十进制 :1 字节表示 2 个十进制数 ; 无符号非压缩十进制 :1 字节表示 1 个十进制数 有符号数 : 有符号二进制数 用补码表示 2015 年 3 月 26 日星期四 11 时 3

《微型算计机接口技术》教材编写大纲

!"# $% & $%%% ( ")*+,-./00-(11.-. $%! $ " # $ % & ( - ) +%23!"# $%%% %,.%,!" $%.! 1.% & /$ 3(,. ( /0% $%%% ( $%%% ( 3 5 /6%%%! ")*+,-./00-(11

!! "!! "! "!! "! "! "!!#$% & ()*+, -./!000$ 1-2$##0! 3

Microsoft Word - 正文.doc

Microsoft PowerPoint - Ch0-绪论.pptx

第一章 计算机基本知识

An b.PDF

B. 工资管理软件 C. 用汇编语言编写的一个练习程序 D.Windows 操作系统 86. 计算机操作系统是一种 A. 系统软件 B. 应用软件 C. 工具软件 D. 调试软件 参考答案 A 87. 下列 4 种软件中属于应用软件的是 A. 财务管理系统 B.DOS C.Windows 98 D.

Ctpu

Microsoft Word - 最新正文.doc

Introduction to Computer Systems /18-243, spring st Lecture, Jan. 12th

Microsoft Word - 部分习题参考答案.doc

考试时间课程名称级人数考试地点 机械工程 17 级卓越 1 30 D-386 机械工程 17 级卓越 2 30 D-386 自动化 17 级 1 30 D-3108 自动化 17 级 2 30 D-3108 电子信息工程 17 级 1 32 C-170 电子信息工程 17 级 2 32 C-242

Ps22Pdf

I 目前机床市场的需求状况

C++ 程序设计 告别 OJ1 - 参考答案 MASTER 2019 年 5 月 3 日 1

数据库系统概论

计算概论A B03 C++语言的基本成分 - 运算成分(2)


7 南 水 北 调 东 线 第 一 期 工 程 三 阳 河 潼 河 宝 应 站 工 程 设 计 江 苏 省 水 利 勘 测 设 计 研 究 院 有 限 公 陆 小 伟, 顾 美 娟, 张 仁 田, 王 钧, 焦 建 华, 张 艺, 朱 正 伟, 杨 俊 敬, 徐 文 俊, 张 娟, 钱 祖 宾, 汤

fy.s92


医学院 基础医学 系 组织胚胎学 课程教案(样例)

<4D F736F F F696E74202D2032BCC6CBE3BBFACFB5CDB32E BBCE6C8DDC4A3CABD5D>

附件2:2013年实验教学中心完成实验教学情况

bnb.PDF


猪猪PPT模板——奇异果

2 大学计算机基础 在电子计算机问世以后的短短几十年的发展历史中, 它所采用的电子元器件经历了电子管时代 晶体管时代 小规模集成电路时代 大规模和超大规模集成电路时代 按所使用的主要元器件分, 电子计算机的发展主要经历了 4 个阶段 第一代 (1946 年 ~1958 年 ) 是电子管计算机时代 其

C. 大规模集成电路 D. 晶体管 参考答案 B 8. 采用超大规模集成电路的计算机是计算机发展中的 A. 第 4 代 B. 第 3 代 C. 第 2 代 D. 第 1 代 参考答案 A 9. 当前的计算机一般被认为是第四代计算机, 它所采用的逻辑元件是 A. 晶体管 B. 集成电路 C. 电子管

2.1 信息存储 2016 年 3 月 3 日 9:32 1. 把位组合在一起, 再加上某种解释, 即给不同的可能位模式赋予含义, 我们就能够表示任何有限 集合的元素 2. 无符号编码基于传统的二进制表示法, 表示大于或者等于零的数字 ; 补码编码是表示有符号整数的最常见的方式, 有符号整数就是可以

第一章

山东建筑大学学分制管理规定(试行)

第5章:汇编语言程序设计

L1 computer system overview

上 海 农 商 银 行 理 财 产 品 风 险 揭 示 书 理 财 资 金, 则 客 户 面 临 产 品 期 限 延 期 调 整 等 风 险 8. 信 息 传 递 风 险 : 上 海 农 商 银 行 将 按 照 本 说 明 书 有 关 信 息 公 告 的 约 定, 进 行 产 品 信 息 披 露 客

(譯本)

内容简介 本书以全国计算机等级考试二级考试大纲为指导, 介绍了二级 Visual Basic 程序设计等级考试所要求的全部内容 全书共 14 章, 包括计算机基础知识 Visual Basic 概述 Visual Basic 可视化编程基础 Visual Basic 语言基础 Visual Basi

Untitiled

中艺华海修改1.7.indd

北 京 蓝 皮 书 公 共 服 务 相 比 而 言, 养 老 医 疗 失 业 等 保 险 都 早 已 经 由 国 务 院 颁 布 了 相 应 的 立 法 条 例, 在 全 国 范 围 内 形 成 了 统 一 的 制 度 党 的 十 八 届 四 中 全 会, 首 次 以 依 法 治 国 为 主 题,

2006年中央、国家机关公务员录用考试


北京交通大学

<4D F736F F D20C8CBCEEFD0CECFF3C9E8BCC6D7A8D2B C4EACAA1D5F9CFC8B4B4D3C5D7A8CFEED7CABDF0CFEEC4BFC9EAC7EBCAE92DDBA2CFFEEAD8202E646F63>

2 第 1 章 有人说使用机器语言, 从根本上来说, 是我所犯的极大错误 但是我真的认为, 只 有有能力讨论底层细节, 才可以为严肃的计算机程序员写书 1 2 登录本书网站 可获取大量的补充信息 教程和练习 读者可能会问的问题 3 需要怎样的背景知识

2 计算机应用基础 (Windows 7+Office 2010) 计算机的起源 1. 东方的创造 : 算筹 算盘人类最初用手指计算 人有两只手, 十个手指头, 所以人们自然而然地习惯于运用十进制记数法 用手指头计算固然方便, 但不能存储计算结果, 于是人们用石头 木棒 刻痕或结绳来延长

我眼中的好老师

里 再 说 吓 唬 了 孩 子, 肯 定 方 宁 不 忍 所 以 她 不 死 便 罢, 倘 若 死, 只 有 到 办 公 室 沈 若 鱼 冷 静 得 好 像 在 评 点 某 一 电 视 剧 中 的 女 主 角 你 说 她 是 怎 么 死 的? 先 生 又 感 惊 骇 吃 安 眠 药 沈 若 鱼 成

模具设计与制造专业建设及人才培养模式改革成效.doc

内容简介 本书以全国计算机等级考试二级考试大纲为指导, 介绍了二级 Visual Basic 程序设计等级考试所要求的全部内容 全书共 11 章, 主要内容包括计算机基础知识 Visual Basic 概述 Visual Basic 可视化编程基础 Visual Basic 语言基础 Visual

胞 中 脂 类 的 分 解 和 转 化 病 人 的 基 因 型 是 aa, 下 列 哪 项 可 以 解 释 Aa 型 的 个 体 可 以 像 AA 型 人 那 样 健 康 生 活 ( ) A.Aa 型 的 细 胞 内, 基 因 A 可 以 阻 止 基 因 a 的 转 录 B.Aa 型 的 细 胞 内

<4D F736F F D20D0C2D5FDCEC4A3A8BBC6A3A92E646F63>

98年度即測即評學科測試與即測即評即發證技術士技能檢定簡章

Microsoft Word 箕æ−¥ï¼‹å®ı稿;

—西安电子科技大学—

关于2008年普通高等教育高职高专招生专业备案工作的通知


zt

深 圳 蓝 皮 书 (2008) 的 企 业 向 境 外 拓 展, 出 台 了 一 系 列 资 金 外 汇 等 扶 持 政 策, 鼓 励 企 业 向 境 外 拓 展, 逐 步 放 宽 对 外 投 资 管 理 下 放 权 力 简 化 程 序, 由 审 批 管 理 向 核 准 制 转 变, 开 始 构

杭师大党字〔2011〕15号中共杭州师范大学委员会关于进一步加强和改进发展党员工作的意见

<4D F736F F D A67EAF64BEC7BCFABEC7AAF7C2B2B3B95FA5FEB3A1AAA95F2D31312E31362E646F63>

得 依 法 召 集 股 東 臨 時 會 第 十 一 條 : 股 東 常 會 之 召 集 應 於 開 會 三 十 日 前, 股 東 臨 時 會 之 召 集 應 於 開 會 十 五 日 前, 將 開 會 日 期 地 點 及 召 集 事 由 通 知 各 股 東 並 公 告 之 第 十 二 條 : 本 公

同 時, 那 些 百 萬 富 翁 們 正 乘 坐 着 私 家 噴 射 機 駛 往 歐 洲, 甘 願 花 大 把 的 鈔 票 接 受 替 代 療 法 並 且 重 獲 了 健 康 替 代 療 法 總 是 很 靈 嗎? 不, 當 然 不 是 在 這 世 界 上 没 有 盡 善 盡 美 的 事 物 但 是

<4D F736F F D B2C431A6B8A4A4A4DFA8C6B0C8B77CC4B3ACF6BFFD E646F63>

untitled

高校发展动态

内容简介 本书以中华人民共和国教育部高等学校计算机基础课程教学指导委员会制定的非计算机专业计算机基础课程教学基本要求为指导, 按照计算机基础课程分类分层次组织教学的思路进行编写, 旨在培养学生的计算思维能力 计算机应用能力和提高学生信息技术素养 本书共分 8 章, 主要内容包括计算机与信息社会 计算

北京交通大学

马克思主义基本原理 通识教育课程范俊玉 1 08:00-08:50 数值分析 专业必修课程张亚楠 2 09:00-09:50 苏州大学 学年第 1 学期数学科学学院课程表 班级名称 :2014 基地人数 :37 辅导员 : 周扬实行日期 : 201


2 计算机基础与 Office 2010 新编应用 耗电大大减小, 运算速度却大大提高, 每秒钟可以执行几十万次到一百万次的加法运算, 性能和稳定性进一步提高 第四代 :1970 年至今, 以大规模和超大规模集成电路为主要标志 计算机的计算性能飞速提高, 计算机开始分化成巨型机 大型机 小型机和微型

人们一般说到的信息多指信息的交流 如古代人与人之间的口耳相传或途经驿站传递文书 军事情报等 近代通过邮局传递信件 现代通过电报 电话交流信息 而当代则通过计算机网络快捷方便地交流信息 信息的特征 信息必须依赖于载体而存在 它具有客观性 普遍性 时效性 价值性 依存性 共享性 传递性和可加工性等特征

高等学校计算机应用规划教材 新编计算机基础教程 (Windows 7+Office 2010 版 ) ( 第三版 ) 宋耀文主编郭轶卓张麟吴瑕副主编 北 京

厦门创兴科技股份有限公司

第一次段考 二年級社會領域試題 郭玉華 (A)(B) (C)(D)

02所有分支机构的营业场所和电话.xls

候非常煩惱 因為我很喜歡作文 我同學看我悶悶不樂問我為甚 麼 我說我道聽途說背古文可以寫好作文 於是我每次註冊就把整 本國文課本背下來 可是完全沒有長進 他看我這樣就說 那你 多讀一點課外書嘛 我就問他課外書是甚麼 他覺得我在開玩 笑 不理我 我就使用那種 我是嚴肅的 的眼神再問他一次 他 就意味深

计算机基础知识


(E). (A) (B) (C) (D) (E). (A) (B) (C) (D) (E) (A) (B) (C) (D) (E) (A) (B) (C) (D). ( ) ( ) ( ) ( ) ( ) ( ) (A) (B) (C) (D) (E). (A) (B) (C) (D) (E). (

Microsoft PowerPoint - IC-HG-Review.ppt

Transcription:

微机原理与系统设计 授课老师 : 李军, 曾操 Email: junli01@mail.xidian.edu.cn Homepage: http://web.xidian.edu.cn/junli 办公室 : 新科技楼 1606 电话 :88201022

教材 微型计算机与接口技术 ( 第二版 ) 科学出版社楼顺天, 周佳社, 张伟涛编著

课程要求及考核 考核 : 笔试 (60%)+ 平时成绩 (40%) 平时成绩包括 作业 上机实验 课堂随机测验

内容概要 本课程是为电子技术应用等专业学生微型计算机原理与应用课程设置的 为适应课程内容更新的需要, 以 8086/8088 微处理器为核心, 详细讨论汇编语言程序设计技术 系统总线形成系统总线形成 存储器设计 常用和专用芯片的接口技术及其应用编程常用和专用芯片的接口技术及其应用编程

必备知识 学习本书的读者, 应学习过高级语言程序设计和数字电路系统 高级语言程序设计 学习高级语言程序设计时, 同学们已经建立了程序设计的算法思想和设计方法, 为学习汇编语言 ( 低级语言 ) 程序设计打下了基础 前四章的重点是汇编语言程序设计以及程序设计中涉及到的相关理论基础知识 数字电路 本课程的内容涉及到软件和硬件的设计 后七章重点讲解硬件设计的相关理论知识 在硬件设计中, 用到的基础知识是数字电路, 如锁存器 缓冲器等缓冲器等

计算工具的发展 人类社会每个阶段都有不同程度的计算需求, 需要有帮助计算的工具 原始人类 : 古代中国 : 西方早期 : 手 算筹 帕斯卡的加法器 ( 法国 ) 古埃及人用结绳来记录土地面积和收获的谷物 算盘 莱布尼兹的计算尺 ( 德国 )

计算工具的发展 二战以后 : 电子计算机 1946 年 2 月 15 日, 世界上第一台通用数字电子计算机 ENIAC 研制成功, 承担开发任务的 莫尔小组 由四位科学家和工程师埃克特 莫克利莫克利 戈尔斯坦 博克斯组成, 总工程师埃克特当时年仅 24 岁 1 电子管计算机 1946 年 ~1957 年 2 晶体管计算机 (1958 年 ~1964 年 ) 3 集成电路计算机 (1965 年 ~1970 年 ) 4 大规模超大规模集成电路计算机 (1971 年至今 ) 计算机发展趋势 : 组成越来越复杂 功能越来越强功能越来越强 应用越来越容易应用越来越容易

计算工具的发展 1971 年, 美国 Intel 公司研究并制造了 I4004 微处理器芯片 该芯片能同时处理 4 位二进制数, 集成了 2300 个晶体管, 每秒可进行 6 万次运算, 成本约为 200 美元 它是世界上第一个微处理器芯片, 以它为核心组成的 MCS-4 计算机, 标志了世界第一台微型计算机的诞生 微机概念 : 以大规模 超大规模构成的微处理器作为核心, 配以存储器 输入 / 输出接口电路及系统总路线所制造出的计算机 划分阶段的标志 : 以字长和微处理器型号

第一代 4 位和低档 8 位机 (1971-1973) Intel 4004 第二代中高档 8 位机 (1974-1978) 特点 : 1 速度越来越快速度越来越快 2 容量越来越大容量越来越大 3 功能越来越强功能越来越强 8080/8085 Z80 MC6800 第三代 16 位机 Intel 8086 Z8000 MC6800 第四代 32 位机 (1978-1981) 80386 80486 第五代 64 位机 Intel Pentium (1981-1992) (1993 后 )

计算工具的发展 Intel 8086 1978 年 6 月,Intel 推出 4.77MHz 的 8086 微处理器 它采用 16 位寄存器 16 位数据总线和 29000 个 3 微米技术的晶体管, 售价 360 美元 本课程主要以 8086 微处理器家族各成员组成的 IBM PC 系列微机为例, 讨论微型计算机组成原理 汇编语言程序设计和输入输出接口技术等问题

微型计算机的应用 1 科学计算和科学研究计算机主要应用于解决科学研究和工程技术中所提出的数学问题 ( 数值计算 ) 2 数据处理 ( 信息处理 ) 主要是利用计算机的速度快和精度高的特点来对数字信息进行加工 3 工业控制用单板微型计算机实现直接数字 (DDC) 级控制, 监督计算机 (SCC) 级控制, 管理信息系统 (MIS)

4 计算机辅助系统计算机辅助系统主要有计算机辅助教 (CAI CAI) 计算机辅助设计 (CAD CAD) 计算机辅助制造 (CAM CAM) 计算机辅助测试 (CAT CAT) 计算机集成制造 (CIMS CIMS) 等系统 5 人工智能人工智能主要就是研究解释和模拟人类智能 智能行智能行为及其规律的一门学科, 包括智能机器人, 模拟人的思维过程, 计算机学习等等 其主要任务是建立智能信息处理理论, 进而设计可以展现某些近似于人类智能行为的计算系统

计算机中的数制和码制 人类习惯于十进制而计算机的语言是 2 进制数 0 1( 道生一, 一生二, 二生三, 三生万物 -- 老子 道德经道德经 ) 位置计数法 : 同一数字在不同数位代表的数值不同 33 常用的数制 : 十进制 (Decimal): ):0~9 表示 ; 后缀加 D, 例如 :33D 或 33( 后缀可省略 ) 二进制 (Binary): ):0 1 表示 ; 后缀加 B, 例如 :01011011B 十六进制 (Hexadecimal): ):0~9 A~F(10~15) 表示 ; 后缀加 H, 例如 :0D5H 一个数可以用不同数值表示, 形式不同, 量值相等 莱布尼茨

第 1 章数制与码制 本章要点 : 数制表示法 数制之间的转化 二进制数运算 有符号数的表示 ASCII 码

1.1 二进制数的基础知识 一 任意进制数的表示任意一个数 N 可以表示成 P 进制数 : 1 ( N ) P = K i P N i = M i 式中 i 表示数的某一位, K i 表示第 i 位的数字,P 为基数, i P 为第 i 位的权,M N 为正整数 =0,1 0,1 P-1 K i

1.1 二进制数的基础知识 对于 n 位整数 m 位小数的任意十进制数 N, 有 : N N 1 = i 10 K i 10 i = M ( Ki =0,1, 9) 如 : = (357.32) 10 3 10 2 + 5 10 1 + 7 10 0 + 3 10 1 + 2 10 2 =357.32

1.1 二进制数的基础知识 N 2 对于 n 位整数 m 位小数的任意二进制数, 有 : N N 1 = i 2 K i 2 i = M ( K=0 或 1) i 如 : = (1101.011 1 2 3 + 1 2 2 ) + 0 2 2 1 + 1 2 0 + 0 2 1 + 1 2 2 + 1 2 3 (13.375 ) = 10

1.1 二进制数的基础知识 对于 n 位整数 m 位小数的任意十六进制数有 : N 1 K i i= M ( N ) 16 = 16 i ( K=0,1, 9,A,B,C,D,E,F) i ( 3C.4) 如 : 16 = 3 16 1 + 12 16 0 + 4 16 1 = (60.25) 10 以上方法称为位置计数法或位置加权法

1.1 二进制数的基础知识 二 各种进制间的相互转换 1. 十进制任意进制数 ( 设为 P 进制 ) 的转换规则 (1) 整数部分 :N 除以 P 取余数例 1. 十进制数 301 十六进制数转换过程如下 : 16 301 16 18 余数为 :D= K 0 16 1 余数为 :2= K 1 0 余数为 :1= K 2 301=12DH

1.1 二进制数的基础知识 例 2. 十进制数 301 二进制数转换过程如下 : 2 301 2 150 余数为 :1= K 0 2 75 余数为 :0= K 1 2 37 余数为 :1= K 2 2 18 余数为 :1= K 3 2 9 余数为 :0= K 4 2 4 余数为 :1= K 5 2 2 余数为 :0= K 6 2 1 余数为 :0= K 7 0 余数为 :1= 301=100101101B K 8 低位高位

1.1 二进制数的基础知识 (2) 纯小数部分 :N 乘以 P 取整数例 1. 十进制小数 0.6875 二进制小数 转换过程如下 : 0.6875 2 =1.375 K 1 =1 0.375 2 =0.75 K 2 =0 0.75 2 =1.5 K 3 =1 0.5 2 =1.0 =1 0.6875=0.1011B 例 2. 十进制小数十六进制小数转换过程如下 : 0.6875=0.B H K 4 K 1 0.6875 16 =11.0 =B 高位低位

1.1 二进制数的基础知识 2. 任意进制数十进制数的转换规则按权展开, 即位置加权法 3. 二进制十六进制数的转换规则如 : 1001001011010.101001111 B 1 2 5 A. A 7 8 H

1.1 二进制数的基础知识 三 二进制数的算术运算二进制计数制不仅物理实现容易, 且运算方法也比十进制计数制大为简单, 所以计算机中均采用二进制数 二进制数的算术运算包括加 减 乘 除 例 : 1 0 1 1 0 1 0 1 B 1 0 1 1 0 1 0 1 B + 0 0 0 0 1 1 1 1 B - 0 0 0 0 1 1 1 1 B 1 1 0 0 0 1 0 0 B 1 0 1 0 0 1 1 0 B

1.1 二进制数的基础知识 四 二进制数的逻辑运算 二进制数的逻辑运算包括与 或 异或异或 非四种运算非四种运算 例 : 1 0 1 1 0 1 0 1 B 1 0 1 1 0 1 0 1 B 0 0 0 0 1 1 1 1 B 0 0 0 0 0 1 0 1 B 0 0 0 0 1 1 1 1 B 1 0 1 1 1 1 1 1 B 1 0 1 1 0 1 0 1 B 0 0 0 0 1 1 1 1 B 1 0 1 1 1 0 1 0 B X X= 1 0 1 1 0 1 0 1 B = 0 1 0 0 1 0 1 0 B

1.2 有符号二进制数的表示方法及溢出问题 一 有符号二进制数的表示方法前面我们接触的二进制数均为无符号数, 即所有二进制数位均为数值位, 很多情况下都是这样对待的 但在有些情况下, 有些数值是带符号的, 即可能是正数, 也可能是负数 这样就存在一个有符号二进制数的表示方法问题 1. 数的符号表示方法为了表示一个有符号数, 除了数值位以外, 还应制定符号位, 通常以这个数的最高位表示符号位

1.2 有符号二进制数的表示方法及溢出问题 我们假定讨论的数为整数, 对 8 位有符号二进制整数, 用下表示 : DDDDDDD 7 6 5 4 3 2 1D0 0: 表示正数 1: 表示负数 符号位 数值部分 这种表示方法称为机器数表示法机器数表示法 有符号二进制数的真值为它对应的十进制数

1.2 有符号二进制数的表示方法及溢出问题 2. 原码表示法如果正数的符号位用 0 表示, 负数的符号位用 1 表示, 绝对值的编码规则与前面讲的无符号数编码规则相同, 这种表示方法称为原码表示法 一个数 X 的原码记为 : DDDDDDD [X] 7 6 5 4 3 2 1D0 原 0 0 0 0 0 0 1 1 +3 的表示 [+3] =00000011B +3 的表示 原 符号位 数值部分 = 绝对值 ( 用无符号二进制数表示 )

1.2 有符号二进制数的表示方法及溢出问题 1 0 0 0 0 0 1 1 的表示 [-3] =10000011B -3 的表示 原 [+0] 原 [-0] 原 =0 0 0 0 0 0 0 0B =1 0 0 0 0 0 0 0B 数 0 的两种表示方法 对 8 位有符号二进制数用原码表示的范围 : 正数从 00000000 01111111,+0 +127 负数从 10000000 11111111,-0-127

1.2 有符号二进制数的表示方法及溢出问题 有符号二进制数用原码表示的优缺点 : 优点 : 表示简单, 易于理解, 真值转换方便 缺点 :+ - 运算麻烦 因为它仅仅是将其值的符号用一位二进制数表示, 因而它的原码数的 + - 运算完全同笔算 如两个正数相减, 计算机首先要判断被减数的绝对值与减数的绝对值的大小, 然后决定是颠倒过来相减, 还是直接相减 最后在结果的前面加上正确的正负号最后在结果的前面加上正确的正负号 所以, 势必增加运行时间, 降低速度, 使运算器的逻辑复杂化 为了改进它, 引进了补码的概念

1.2 有符号二进制数的表示方法及溢出问题 3. 补码表示法 (1) 补码的概念一个数 X 的补码记为 [X] 补, 补码可定义为 : [x] 补 = x 2 n +x 当 当 0 x < 2 n 1 n 2 1 x<0 n (mod 2 ) 从定义可见, 正数的补码 = 原码, 即补, 原 所以, 只有负数求补的问题 n=8 时, 表示范围 :-128~127 [x] = [x]

1.2 有符号二进制数的表示方法及溢出问题 (2) 一个数的补码的求法 根据定义求补码 补 2 n +x [x] = = 2 n x, x<0 即负数 x 的补码等于模值的绝对值 ) n 2 如 :x=-1010111b,n=8, 则 [X] 补 = 2 8 + ( 1010111B) = = 加上其真值 ( 或减去其真 100000000B-1010111B 10101001B (mod 2 n ) 这种方法因要做一次减法, 很不方便

1.2 有符号二进制数的表示方法及溢出问题 利用原码求补码 一个负数负数的补码等于其原码除符号位保持不变外, 其余各位按位取反, 再在最低位加 1 如 :x=-1010111b [X] 原 =11010111B [X] 补 = 10101000B+1=10101001B 值的注意的是 :0 的补码只有唯一的形式, 符号位和数值位均为 0 无正负 0 之分

1.2 有符号二进制数的表示方法及溢出问题 简便的直接求补码 分 2 步 : 第一步 : 取 x 的绝对值第二步 : 当 x 为正数时,[x] = x 补原 当 x 为负数时,[x] = x +1 ( 含符号位 ) 补原

1.2 有符号二进制数的表示方法及溢出问题 如 :x=-87, 即 x =0101 0111B x 原 =0 1 0 1 0 1 1 1 B 1 0 1 0 1 0 0 0 B +) 1 [x] 补 = 1 0 1 0 1 0 0 1 B 8 位二进制补码所能表示的数的范围 :-128 +127 16 位二进制补码所能表示的数的范围 :-32768 +32767

1.2 有符号二进制数的表示方法及溢出问题 (3) 数的补码表示转换为原码表示 [X] 补 一个用补码表示的负数, 如将再求一次补, 即将 [X] 补除符号位外取反加 1, 就可得到 [X] 原, 用下式表示 : [X] 补补 = [X] 原 [X] 补如 : = 10101001B [X] 补补 = 11010111B = [X] 原

1.2 有符号二进制数的表示方法及溢出问题 (4) 补码的运算规则第一个公式 : 两个 n 位二进制数之和的补码等于这两数补码之和, 即 : [X+Y] 补 = [X] 补 + [Y] 补 例 : (+33)+(-15) 0 0 1 0 0 0 0 1 B + 1 1 1 1 0 0 0 1 B 进位, 丢掉 [1]0 0 0 1 0 0 1 0 B [+33] 补 [-15] 补 [+18] 补

1.2 有符号二进制数的表示方法及溢出问题 第二个公式 : 两个 n 位二进制数之差的补码等于这两数补码之差, 即 : [X-Y] 补 = [X] 补 - [Y] 补 例 : (+33)-(-15) 0 0 1 0 0 0 0 1 B - 1 1 1 1 0 0 0 1 B 借位, 丢掉 [1]0 0 1 1 0 0 0 0 B [+33] 补 [-15] 补 [+48] 补

1.2 有符号二进制数的表示方法及溢出问题 第三个公式 : 补码减法运算时, 也可以利用加法基本公式, 即 : [X-Y] 补 = [X] 补 + [-Y] 补 (mod 2 n ) 因为 :X-Y = X+(-Y) 所以 : [X-Y] 补 = [X+(-Y)] 补 = [X] + [-Y] 补补 一般称已知 [Y] 补, 求得 [-Y] 补的过程叫变补或求负

1.2 有符号二进制数的表示方法及溢出问题 变补或求负是一种很有用的运算 求法求法 : 若已知 [Y] 补 = Yn 1Y Y Y n 2 1 0, 则对 [Y] 补的每一位 ( 包括符号位 ) 都按位取反, 然后再加 1, 结果即 例 : (+33)-(+15) [-Y] 补 00100001B [+33] 补 - 00001111B [+15] 补 00010010B [+18] 补 ( 公式二 ) 00100001B [+33] 补 + 11110001B [-15] 补 [1] 00010010B [+18] 补借位, 丢掉 ( 公式三 )

1.2 有符号二进制数的表示方法及溢出问题 二 有符号数运算的溢出问题 如果计算机的字长为 n 位,n 位二进制数的最高位为符号位, 其余 n-1 位为数值位, 采用补码表示法时, 可表示的数 X 的范围为 : 2 n 1 X 2 n 当 n=8 时, 可表示的有符号数的范围为 : -128 +127 当 n=16 时, 可表示的有符号数的范围为 : 1-32768 +32767 1

1.2 有符号二进制数的表示方法及溢出问题 两个有符号数进行加减运算时, 如果运算结果超出可表示的有符号数的范围时, 就会发生溢出, 使计算结果出错 很显然, 溢出只能出现在两个同号数相加或两个异号数相减的情况下

1.2 有符号二进制数的表示方法及溢出问题 例 : (+72)+(+98)=+170>+127 溢出 0 1 0 0 1 0 0 0 B + 0 1 1 0 0 0 1 0 B [+72] [+98] 补 补 1 0 1 0 1 0 1 0 B [-86] 补 有进位 =1 无进位 =0 溢出, 结果出错 ( 正溢出 ) C s C p C p C S = 1 设次高位 ( 数值部分最高位 ) 向最高位 ( 符号位 ) 的进位标志为 C p ; 最高位 ( 符号位 ) 和次高位的进位相加的进位标志为 C S

1.2 有符号二进制数的表示方法及溢出问题 例 : (-83)+(-80)=-163<-128 溢出 1 0 1 0 1 1 0 1 B + 1 0 1 1 0 0 0 0 B [-83] [-80] 补 补 [1] 0 1 0 1 1 1 0 1 B [+93] 补 无进位 =0 C p 有进位 =1 C S 溢出, 结果出错 ( 负溢出 ) C s C p = 1

1.2 有符号二进制数的表示方法及溢出问题 结论 : 对于加法运算 (1) 如果次高位有进位而最高位无进位, 则结果溢出 ; (2) 如果次高位无进位而最高位有进位, 则结果溢出 这两种情况分别是 : (1) 两负数相加, 结果超出范围, 形式上变为正数 ; (2) 两正数相加, 结果超出范围, 形式上变为负数

1.2 有符号二进制数的表示方法及溢出问题 同理, 我们可得出结论 : 对于减法运算 (1) 如果次高位有借位而最高位无借位, 则结果溢出 ; (2) 如果次高位无借位而最高位有借位, 则结果溢出

1.3 二进制编码的十进制数 (BCD 编码 ) 一 8241BCD 码前面讲过, 计算机只认识 0 1 二进制代码, 但人们最习惯的是十进制 为了解决这一矛盾, 提出了一个比较适合于十进制系统的二进制代码的特殊形式 BCD 码 BCD 码是用四位二进制数表示 1 位 0 9 的十进制数, 而 4 位二进制数码有 16 种组合, 原则上可任选 10 种作为代码, 但为便于记忆和比较直观, 最常用的是 8421BCD 码, 8 4 2 1 分别是 4 位二进制数的位权值 下面给出十进制数和 8421BCD 编码的对应关系

1.3 二进制编码的十进制数 (BCD 编码 ) 十进制数 0 1 2 3 4 5 6 7 8 9 8421BCD 码 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001

1.3 二进制编码的十进制数 (BCD 编码 ) 如 : 十进制数和 BCD 码相互转换 75.4 BCD 码 75.4 = (01110101.0100) BCD BCD 码 10000101.0101 十进制数 ( 10000101.0101) BCD =85.5 同一个 8 位二进制代码表示的数, 当认为它表示的是二进制数和认为它表示的是二进制编码的十进制数, 数值是不相同的 如 : (00011000 =24 ) 2 (00011000 ) BCD =18

1.3 二进制编码的十进制数 (BCD 编码 ) 在计算机中,BCD 码有两种基本格式 a. 组合式 BCD 码 b. 分离式 BCD 码 a. 组合式 BCD 码 两位十进制存放在一个字节中 如数 24 的存放格式 : D7D6DD 5 4DD 3 2D1D0 0 0 1 0 0 1 0 0 2 4

1.3 二进制编码的十进制数 (BCD 编码 ) b. 分离式 BCD 码每位数存放在 8 位字节的低 4 位, 高 4 位的内容与数值无关 如数 24 的存放格式 : 二 BCD 码的加减法运算 D 7D 6D 5D 4D 3D 2D 1D 0 x x x x 0 0 1 0 x x x x 0 1 0 0 下面我们以组合式 BCD 码格式为例讨论 BCD 码的加减运算 由于 BCD 编码是将每个十进制数用一组 4 位二进制数表示, 若将这种 BCD 编码直接交计算机运算, 计算机总是把它按二进制数处理, 所以结果可能出错 2 4

1.3 二进制编码的十进制数 (BCD 编码 ) 如 :38+49=87 0 0 1 1 1 0 0 0BCD 38 0 1 0 0 1 0 0 1 1 0 0 0 0 0 0 1 BCD 49 87 出错原因 : 十进制相加应逢十进一, 但计算机按二进制运算, 每四位一组, 低四位向高四位进位相当十六进制运算, 逢十六进一 所以当结果超过 9 时将比正确值少 6 81 显然, 结果出错 解决办法 : 加六修正

1.3 二进制编码的十进制数 (BCD 编码 ) 加六修正规则 : (1) 如果两个 BCD 码位相加没有进位, 并且结果 9, 则该位不需修正 (2) 如果两个 BCD 码位相加有进位, 或者其结果 10 10, 该位进行加六修正 (3) 低位修正结果使高位 >9 时, 高位进行加六修正 例 :94+7 94+7=101

1.3 二进制编码的十进制数 (BCD 编码 ) 1 0 0 1 0 1 0 0 94 + + 0 0 0 0 0 1 1 1 7 1 0 0 1 1 0 1 1 低 4 位满足法则 2 0 0 0 0 0 1 1 0 加六修正 1 0 1 0 0 0 0 1 高 4 位满足法则 3 0 1 1 0 0 0 0 0 加六修正 + [1]0 0 0 0 0 0 0 1 101 结果正确

1.3 二进制编码的十进制数 (BCD 编码 ) 减六修正规则 : (1) 如果两个 BCD 码位相减没有借位, 则该位不需修正 (2) 如果两个 BCD 码位相减有借位, 则该位进行减六修正 例 :50 50-29 29=21 21

1.3 二进制编码的十进制数 (BCD 编码 ) ` 0 1 0 1 0 0 0 0 50 - - 0 0 1 0 1 0 0 1 29 0 0 1 0 0 1 1 1 低码位有借位 0 0 0 0 0 1 1 0 减六修正 0 0 1 0 0 0 0 1 21 结果正确

1.4 ASCII 字符代码 ASCII 美国国家信息标准交换码 ASCII 用 7 位二进制代码对任一字符编码, 包括 : 共 128 个 32 个通用控制符 0-- --9 10 个数字 52 个英文大小写字母 34 个专用符号 要求掌握常用字符的 ASCII 码 : 0~9, A~Z,a~z, 空格, 回车, 换行

记住下列 ASCII 码 0~9 : 30H~39H A~Z: 41H~5AH a~z : 61H~7AH 空格 : 20H 回车 :0DH 换行 :0AH

补充习题 : 1 设机器字长 16 位, 则 1024 的补码可表示为 H,-,-1024 的补码可表示为 2 设机器字长为 8 位, 十进制 -56 的原码为 H, 补码为 H 将十进制 157 表示成 16 进制数为 3 有符号数 78H+93H, 其结果是否溢出 4 机器字长为 8 位, 机器中字用补码表示, 则 -5 表示成 H,34H 表示成 H,-,-34H 表示成 H

作业作业作业作业本章习题本章习题本章习题本章习题 : 1.(1) 1.(1) 1.(1) 1.(12) 2. 2. 2. 2.(246 (46 (46 (46) 3. 3. 3. 3.(12) (2) (2) (2) 4. 4. 4. 4.(1 2) 5. 5. 5. 5.(12) (2) (2) (2) 6. 6. 6. 6.(1 2 6) 7. 7. 7. 7.(1 2 3) 6. 6. 6. 6.(1 2 6) 7. 7. 7. 7.(1 2 3) 8. 8. 8. 8.(1 234) (34) (34) (34) 9. 9. 9. 9.(1 256) (56) (56) (56) 10. 10. 10. 10.(2 3) 12. 12. 12. 12.(2 4) 14. 14. 14. 14.(1 358) (58) (58) (58) 15. 15. 15. 15.(1 4) 17. 17. 17. 17.(1 2) 19. 19. 19. 19.(3 6) 21. 21. 21. 21.(2) 22 22 22 22.(1 2)