汇编语言 程序设计 第 1 章 基础知识 第 1 章 基础知识 ◆ 汇编语言程序设计概述 ◆ 进位计数制及其相互转换 ◆ 计算机中数的表示 ◆ 计算机中字符的表示 汇编语言程序设计概述 进位计数制及其相互转换 计算机中数的表示 计算机中字符的表示.

Slides:



Advertisements
Similar presentations
历尽九九八十一难, 唐僧四人终于到达天竺, 取得真经,完成任务。 四人想着难得到天竺一趟, 不如在此游览一番。
Advertisements

1 1.2 信息的表示与存储  数据:数据是对客观事物的符号表示。 如,数值、文字、语言、图形、图像等都是不同形 式的数据。  信息:信息是既是对客观事物变化和特征的反映,又 是事物之间相互作用、相互联系的表征。 信息必须数字化编码,才能用计算机进行传送、存 储和处理。 信息具有针对性和时效性。
一、中国湿地面临的威胁 目前,湿地污染严重,湖泊 富营养化问题突出。随着社 会经济的快速发展,湿地污 染在很长时期内依然严重。 湿地污染 1.
中共盘县发展和改革局党组主体责任落实情况报告
第1章 预备知识(数制与码制) 1.1 进位计数制及各计数制间的转换 1.2 二进制数的运算
我们毕业了 毕业留念册 再见老师 姓名:黄巧灵 班级:六(1)班 毕业时间:2012年6月.
专题二:城市化与城乡规划 授课教师:周栋文.
第二章 城市轨道交通系统的构成 城市轨道交通系统的分类 2.1 2.2 车辆与车辆段 2.3 轨道交通限界
延庆县“十二五”时期城乡基础设施 建设规划 2011年03月.
2011届高三地理高考复习课件 拉丁美洲 高三地理备课组.
報告書名:父母會傷人 班級:二技幼四甲 姓名:吳婉如 學號:1A2I0034 指導老師:高家斌
这是一个数字的 乐园 这里埋藏着丰富的 宝藏 请跟我一起走进数学的 殿堂.
大学计算机基础 山东大学计算机学院 张鹏 高等学校计算机公共教学改革与实践 大学计算机基础 山东大学计算机学院 张鹏
探索确定位置的方法 王积羽.
第六章 其他税收法律制度.
媽,我們真的不一樣 青少年期與中年期 老師: 趙品淳老師 組員: 胡珮玟4A1I0006 馬菀謙4A1I0040
一、平面点集 定义: x、y ---自变量,u ---因变量. 点集 E ---定义域, --- 值域.
第3课 收复新疆.
5.1 文本与文本处理 5.2 图像与图形 5.3 数字声音及应用 5.4 数字视频及应用
1.6 中国人口迁移.
課程名稱:計算機概論 授課老師:李春雄 博士
第十一单元 第24讲   第十一单元 世界经济的全球化趋势.
班級:二幼三甲 姓名:郭小瑄 、 詹淑評 學號:1A2I0029 、1A2I0025
一元一次方程的应用 行程问题.
管理学基本知识.
指導老師:陳韻如 姓名:吳宜珊 學號:4A0I0911 班級:幼保二乙
滁州学院首届微课程教学设计竞赛 课程名称:高等数学 主讲人:胡贝贝 数学与金融学院.
中国的富饶之地 —东北.
珍珠容顏 光采煥發.
2.3 信息表示与编码 所谓编码,就是利用数字串来标识所处理对象的不同个体。
1.1.2 四 种 命 题.
9.1 抽签的方法合理吗.
傳統童玩遊戲創新 組別:第八組 班級:幼保二甲 組員: 4A0I0005柯舒涵 4A0I0011謝孟真
第二章 數字系統:電腦內部的資料表示法 在第一章中,我們對於電腦有了初步的認識,在深入介紹電腦的各項組成元件之前,首先我們必須先了解另一種不同於人類使用習慣的二進位表示法,由於電腦的半導體、磁性、光學元件適合用來表示二進位,因此二進位表示法非常適合用來設計電腦。
拾貳、 教育行政 一、教育行政的意義 教育行政,可視為國家對教育事務的管理 ,以增進教育效果。 教育行政,乃是一利用有限資源在教育參
课标教材下教研工作的 实践与思考 山东临沂市教育科学研究中心 郭允远.
課程銜接 九年一貫暫行綱要( )  九年一貫課程綱要( ) 國立台南大學數學教育系 謝 堅.
第八章二元一次方程组 8.3实际问题与二元一次方程组.
第八章二元一次方程组 8.3实际问题与二元一次方程组 (第3课时).
2.4 二元一次方程组的应用(1).
动物激素的调节及其在农业生产中的应用(B级)
第二章 计算机基础知识 2.1 计算机系统的组成与工作原理 2.2 数制转换及运算 2.3 数据在计算机中的表示.
數字系統與資料表示法 電腦的基本單位 數字系統 數值資料表示法 數值資料與算數運算 數碼系統 浮點數表示法 文字表示法 資料來源:周裕達教授.
2012版中考二轮复习历史精品课件北师大版 (含2011中考真题) 专题五世界近代史
数字电路与逻辑设计 任课教师:刘毅 博士/副教授 单位:西安电子科技大学ISN国家重点实验室
資料表示法與數字系統 主講:顧叔財 資料來源: 計算機概論.
A3-1 數字系統 A3-2 資料表示法 A3-3 資料的儲存
计算机文化基础 第一章 计算机的基础知识.
第1章 微型计算机基础知识 【本章重点】微型计算机的组成和各部分的作 用,以及计算机中数的表示方法。
數位邏輯與實習 曾建勳 Week 2.
微机原理电子教案 微机原理电子教案.
6-1 資料表示法簡介 6-2 數值表示法 6-3 數字系統介紹 6-4 數字系統轉換方式
计算机组成原理 The Principle of Computer
第一章 微型计算机基础知识.
任务一:初识计算机 任务二:学习计算机中的信息表示 P /4/7.
计算机原理及系统结构 第六讲 主讲教师:赵宏伟                 学时:64.
第1章 数制与编码 1.1 数制 1.2 编码.
数字电子技术 Digital Electronics Technology
數字系統 資訊工程系 國立清華大學資訊基礎教育 教學改進計畫 數字系統 資訊工程系 /4/22.
數位邏輯設計與實習 主講者:杜勇進.
结束 放映 1.1 数制及编码 数制及其转换 编码 返回 2019/5/1.
数字电子技术 电子教案 章洁.
第1章 数制与编码 1.1 数制 1.2 编码.
第四章 图元的属性.
 第四章 消费税法律制度 经济法基础 模板来自于
第一章 数字逻辑基础 1.1 模拟信号与数字信号 1.2 数字电路 1.3 数制 1.4 二进制编码.
第二章 计算机中的信息表示.
单片机原理及接口技术 前修课程:数模电、微机原理.
专题八 欧美代议制的确立与发展 (17—19世纪) 英    美 法 德 选修:日本 俄国.
用加減消去法解一元二次聯立方程式 台北縣立中山國中 第二團隊.
Presentation transcript:

汇编语言 程序设计 第 1 章 基础知识 第 1 章 基础知识 ◆ 汇编语言程序设计概述 ◆ 进位计数制及其相互转换 ◆ 计算机中数的表示 ◆ 计算机中字符的表示 汇编语言程序设计概述 进位计数制及其相互转换 计算机中数的表示 计算机中字符的表示

汇编语言 程序设计 1.1 汇编语言程序设计概述 机器语言是计算机第一代语言,它全部由 0 、 1 代码组成,是能够直接被机器所接受的语言,是最 底层的计算机语言。机器语言不容易记忆,程序编 写难度大,调试修改繁琐,且不易移植,现程序员 很少用。但机器语言执行速度最快,它是一种面向 机器的程序设计语言。 机器语言汇编

汇编语言 程序设计 具有一定含义的符号作为助忆符,用指令助忆 符、符号地址等组成的符号指令称为汇编格式指令 ( 或汇编指令 ) 。汇编语言是汇编指令集、伪指令集 和使用它们规则的统称。汇编语言比机器语言直观, 容易记忆和理解,用汇编语言编写的程序也比机器 语言程序易读、易检查、易修改。对于不同的计算 机,针对同一问题所编写的汇编语言源程序是互不 通用的。用汇编语言编写的程序执行效率比较高, 但通用性与可移植性仍然比较差。计算机不能直接 识别用汇编语言编写的程序,必须由一种专门翻译 程序将汇编语言程序翻译成机器语言程序,计算机 才能执行。 汇编语言

汇编语言 程序设计 1. 可以更深刻认识计算机的工作过程 用汇编语言编制程序,可以清楚地了解计算机 是怎样完成各种复杂工作的。在此基础上,程序设 计人员更能充分地利用机器硬件的全部功能,发挥 机器的长处。 2. 许多领域和场合需要使用汇编语言. 与硬件资源密切相关的软件开发;. 要求执行效率高、反应快的领域;. 受存储容量限制的应用领域。 为什么要学习和使用汇编语言 返回

汇编语言 程序设计 1. 数制的概念 按进位的原则进行计数叫进位计数制,简称数 制。每种数制都有其基数和各数位的位权。基数是 指该数制中允许选用的基本数码的个数。每个数码 所表示的数值等于该数码乘以一个与数码所在位置 有关的常数,这个常数叫位权,位权的大小是以基 数为底,数码所在位置的序号为指数的整数次幂。 2 .常用的数制 在汇编语言中常用的数制有:十进制、 二进制、 八进制和十六进制。 1.2 进位计数制及其相互转换 进位计数制

汇编语言 程序设计 十进制数的基数为 10 ,十进制数的位权为 10 i , 其中 i 代表数字在十进制数中的序号,任意一个 10 进 制 N 可表示为: N= a n a n-1 … a 1 a 0.a -1 … a -m = a n ×10 n + a n-1 ×10 n-1 + … +a 1 × a 0 × a -1 × …… +a -m ×10 -m -m = ∑ a i ×10 i i=n 2. 二进制 二进制数的基数为 2 ,二进制数中每一个数字的 位权由 2 的幂次决定,即: 2i, 其中 i 为数字在二进制 数中的序号。 1. 十进制

汇编语言 程序设计 N = a n a n-1 ….. a 1 a 0.a -1 …… a -m = a n ×2 n + a n-1 ×2 n-1 + ….. +a 1 ×2 1 + a 0 ×2 0 + a -1 × …… +a -m ×2 -m -m = ∑a i ×2 i i=n 3. 十六进制 十六进制数的基数为 16 ,十六进制中每位数字的位 权由 16 的幂次决定 N = a n a n-1 ….. a 1 a 0.a -1 …… a -m = a n ×16 n +a n-1 ×16 n-1 + … +a 1 ×16 1 +a 0 ×16 0 +a -1 × …… +a -m ×16 -m -m = ∑a i ×16 i i=n 其中 m , n 意义同前, ai 取值范围为 0-9 , A , B , C , D , E , F 中任一数字。

汇编语言 程序设计 各种数制间的相互转换 将数由一种数制转换成另一种数制称为数制间的 转换。 1. 非十进制转换成十进制 非十进制数转换成十进制数采用 “ 位权法 ” ,即把非 十进制数写成各自的按权展开式,然后按十进制运算 原则求和,其和值就是转换后对应的十进制数。 【 例 1.1 】 将十六进制数 B2F 转换成十进制数。 ( B2F ) 16 = B × × F × 16 0 = 11 × × × 16 0 = = ( 2863 ) 10

汇编语言 程序设计 2. 十进制数转换成非十进制数 将一个十进制数转换非十进制数时,整数部分 和小数部分的转换方法是不同的,需将整数部分和 小数部分分别转换,将两个转换结果结合起来就可 以得到对应的非十进制数。 (1) 十进制整数转换成非十进制 整数将十进制整数转换为非十进制整数采用 “ 除 基取余法 ” ,即:将十进制整数及此期间产生的商逐 次除以需转换为数制的基数。直到商为零为止,并 记下每一次相除所得到的余数。按从后往前的次序 将各余数记作 KnKn-1Kn-2 …… K0 ,从而构成转换 后 对应的非十进制整数。第一次得到的余数为非十进 制数的最低位,最后一次得到的余数为非十进制数 的最高位。

汇编语言 程序设计 【 例 1.3 】将整数 125 转换成对应的十六进制整数 则得:( 125 ) 10 = ( 7D ) 16 (2) 十进制小数转换成非十进制小数 将十进制小数转换为非十进制小数采用:将十 进制小数及此期间产生的积小数部分逐次乘以需转 换为数制的基数,直到积的小数部分为零为止或达 到一定精度为止,并记下每一次相乘所得到的整数 部分,按照从前往后的次序,将各整数部分记作 k – 1 k-2 …… k-m ,从而构成转换后对应的非十进制小数。 【 例 1.4 】将十进制数 转换成对应的二进 制数 因为 ( 125 ) 10 = ( ) 2 ( ) 10 = ( ) 2 所以 ( ) 10 = ( ) 2 返回

汇编语言 程序设计 1.3 计算机中数的表示 数值型数据是用二进制数来表示的,数值数据分 为有符号数和无符号数,有符号数有正、负之分, 通常,无符号数最高位表示数值,而有符号数最高 位表示符号,规定:用 “ 0 ” 表示 “ + ” 号,用 “ 1 ” 表示 “ ﹣ ” 号。把这种连同数字与符号组合在一起的二进制数 称为机器数,由机器数所表示的实际值称为真值。 真值的符号用 “ + ” 或 “ ﹣ ” 表示。有符号数可以用不同的 码制来表示,即:原码、反码、补码、移码等,常 用的是补码。

汇编语言 程序设计 原码表示法 设字长为 n 位,最高位为符号位,正数的符号用 “ 0 ” 表示, 负数的符号用 “ 1 ” 表示,数值部分 n-1 位用二进制真值的绝对 值表示,这种表示法称为原码。 例如 设字长为 8 当 x = 时, [x] 原 = , 当 x = 时, [x] 原 = 当 x = 时, [x] 原 = ,当 x = 时, [x] 原 = 补码表示法 补码表示法规定:正数的补码与原码相同,负数的补码 是对该数的原码除符号位外各位取反,然后末位加 1 。 例如,设字长为 8 当 x = 时, [x] 补 = , 当 x = 时, [x] 补 = 当 x = 时, [x] 补 = 当 x = 时, [x] 补 =

汇编语言 程序设计 反码表示法 反码表示法规定:正数的反码和原码相同,负数的反码是 对该数的原码除符号位外各位取反,即 “ 0 ” 变 “ 1 ” , “ 1 ” 变 “ 0 ” 。 例如 设字长为 8 当 x = 时, [x] 反 = , 当 x = 时, [x] 反 = 当 x = 时, [x] 反 = ,当 x = 时, [x] 反 = 移码表示法 移码的定义 : [x] 移 = 2 n + x (2 n > x ≥ -2 n ) 移码是在真值上加一个常数 2 n ,在数轴上移码所表示的范 围恰好对应与真值在数轴上的范围向轴的正方向移动 2 n 个单 元,而得到移码名称。同一真值的补码和移码只差最高位相 反 。 例如 x = [x] 移 = = x = [x] 移 = = x = [x] 补 = =

汇编语言 程序设计 补码的加法和减法运算 1 .补码加减运算的基本公式 [A] 补 +[B] 补 =[A+B] 补 ( 整数 mod 2 n +1 ;小数 mod 2 ) [A-B] 补 = [A] 补 +[-B] 补 ( 整数 mod 2 n +1 ;小数 mod 2) 【例 1.10 】设字长为 8 , x = , y = ,用补码的加法 求 x+y 解: [x] 补 = , [y] 补 = [x] 补 +[y] 补 = = (按模 2 的意义,最左边的 1 丢掉) 即 x+y = 【例 1.10 】 x = , y = ,用补码的减法求 x-y 解: [x] 补 = , [y] 补 = , [-y] 补 = [x] 补 - [y] 补 = [x] 补 + [-y] 补 = =

汇编语言 程序设计 2 .溢出判断 两个符号位相同的补码相加,如果和的符号位与加数的符号相反, 则表明运算结果溢出;两个符号位相反的补码相减,如果差的符号 位与被减数的符号位相反,则表明运算结果溢出。这种方法需要判 断操作是加法还是减法,以及运算结果与操作数的符号关系。 【例 1.12 】机器字长为 8 ,高位为符号位,令 A = -91 , B = +43 ,求 [A-B] 补 解:由 A = -91= ,得 [A] 补 = 由 B = +43 = ,得 [B] 补 = , [-B] 补 = [A-B] 补 = [A] 补 + [-B] 补 = = 按模 2 n +1 的意义,最左边的 “ 1 ” 自然丢掉,而符号位变成了 0 与正 确的符号为 1 不同,因此可以判断运算出现溢出,这是因为 A-B= 超出了机器字长所能表示的范围。

汇编语言 程序设计 定点数和浮点数 按小数点的位置是否固定,一般分为定点数和浮点数,相应地 数据具有定点表示和浮点表示两种形式。 1 .定点数 在机器中,小数点位置固定的数称为定点数,定点数根据小数 点隐含固定位置不同,又分为定点小数和定点整数。一般采用定 点小数表示法。

汇编语言 程序设计 2 .浮点数 浮点数是指小数点位置不固定、根据需要而浮动的数,它既有整数部分 又有小数部分。定点数所能表示的范围非常有限,在许多场合下是不够用 的,浮点数表示法可以扩大数据的表示范围。 一个数 N 用浮点数表示可以写成: N = M×R E 其中 M 表示尾数, E 表示指数, R 表示基数。基数一般取 2 、 8 、 16 。一 旦计算机定义好了基数值,就不能再改变了,因此,基数在浮点数中不用 表示出来,是隐含的。 计算机中参与运算的数超出了浮点数的表示范围时称为溢出。如果一个 数的阶码大于计算机所能表示的最大阶码,则称为上溢;反之,若小于最 小阶码,则称为下溢。 采用浮点表示的数,在运算之前要进行对齐小数点的操作(称为对阶), 才能进行加减运算。 返回

汇编语言 程序设计 1.4 计算机中字符的表示 计算机中字符的表示方法有多种,最常见的有 ASCII 码、 BCD 码。 ASCII 码 ASCII 码( American Standard Code for Information Interchange )是 美国标准信息交换码,已被国际标准化组织定为国际标准,是目前最普 遍使用的字符编码。 ASCII 码有 7 位码和 8 位码两种编码方案,常用的是 7 位码方案。 7 位 ASCII 码是用七位二进制数进行编码的,可共表示 27 =128 个字符。 ASCII 码的每个字符用 7 位二进制码表示,其排列次序为 b6b5b4 b3b2b1b0 , b6 为高位, b0 为低位。 数 0-9 ASCII 码的编码值为 30H-39H ,大写英文字母 A-Z 的编码值为 41H-5AH ,小写英文字母 a-z 的编码值为 61H-7AH 。

汇编语言 程序设计 BCD 码 BCD 码( Binary Coded Decimal )是一种二-十进制的编码,它 使用 4 位二进制数表示一位十进制数。最常用的 BCD 码 8421 码,又 叫 NBCD 码( Natural Binary Coded Decimal Code ),由于 4 位 二进制数可表示 16 种状态,只取前 10 种状态 来表示十进 制数码 0-9 ,从左到右每位二进制数的权分别是 8 、 4 、 2 、 1 ,因此 又叫 8421 码。这种编码既具有二进制形式,又具有十进制的特点, 它是逢 “ 十 ” 进位的。 BCD 码十个不同的码分别是: 0000 、 0001 、 0010 、 0011 、 0100 、 0101 、 0110 、 0111 、 1000 和 1001 ,这十个 码分别代表十进制数码 0 、 1 、 2 、 3 、 4 、 5 、 6 、 7 、 8 、 9 。 例如:十进制数 1258 对应的 BCD 码是 ;反之, BCD 码 对应的十进制数是 9872 。 返回