第01章-汇编语言程序设计(第2版)(教育部规划)基础知识_第1页
第01章-汇编语言程序设计(第2版)(教育部规划)基础知识_第2页
第01章-汇编语言程序设计(第2版)(教育部规划)基础知识_第3页
第01章-汇编语言程序设计(第2版)(教育部规划)基础知识_第4页
第01章-汇编语言程序设计(第2版)(教育部规划)基础知识_第5页
已阅读5页,还剩17页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第1章基础知识1.1汇编语言程序设计概述

1.1.1汇编语言机器语言:面向机器的程序设计语言。机器指令是由0和1构成的二进制代码。高级语言:面向问题求解过程或面向对象的程序设计语言。汇编语言:符号化的机器语言。1.1.2汇编语言程序设计为何学习汇编语言程序设计?1.可以高效地使用计算机解决现实问题。在解决同一现实问题时,汇编语言程序与高级语言程序相比,占用内存更小,执行速度更快。2.可以直接利用计算机的硬件特性,准确计算解决某一问题所需的时间,从而可实现实时控制。这一点是高级语言程序难以替代的。3.对于学习计算机组成原理、微机原理也大有帮助。1.2进位计数制数

制基数码尾

标十六进制160,1,2,3,4,5,6,7,8,9,A,B,C,D,E,FH十进制100,1,2,3,4,5,6,7,8,9D(或缺省)八进制80,1,2,3,4,5,6,7Q(或O)二进制20,1B1.2.1常用计数制及其数的算术运算1.十进制(Decimal)2.二进制(Binary)二进制数的算术运算与十进制数的算术运算类似,区别仅在于该运算遵循逢二进一的规则。小数点左移n位等效于将该数乘以2n,小数点右移n位等效于将该数乘以2-n。3.十六进制(Hexadecimal)

1.2.2数制转换基本方法和技巧1.非十进制数→十进制数按权展开。2.十进制数→非十进制数(1)十进制整数→非十进制整数①除基取余法②减权记位法

(1)十进制整数→非十进制整数②减权记位法将十进制整数与其最相近的权值2n-1作比较,前者不小于后者则减去2n-1,并在n-1位记1;否则在n-1位记0。然后再与2n-2作比较并做相同的工作,直至最低位被记为1或0。从n-1位、n-2位直至最低位所记的1或0就构成了二进制数Kn-1Kn-2…K0。通常第1次比较所用的2n-1取作小于等于十进制整数的最大二进位权值。(1)十进制整数→非十进制整数比较,减权记位Ki

233-27=1051K7105-26=411K641-25=91K59<24

0K49-23=11K31<22

0K21<21

0K11-20=01K02.十进制数→非十进制数(2)十进制小数→非十进制小数①乘基取整法②减权计位法

与上述十进制整数转换为二进制整数时使用的减权计位法类似,但有两点区别:其一,十进制小数首先应与2-1比较,然后与2-2比较,依此类推;其二,有时要根据需要,取部分小数位作为近似转换结果。1.2.2数制转换基本方法和技巧3.二进制数←→八进制、十六进制数将二进制数由小数点向左右每四位分为一组(不足四位则用0补充),每一组用对应的十六进制数码表示,即可得到对应的十六进制数。用相反过程可由十六进制数得到二进制数。在分组中若不足四位时,一定要用0补充,否则易出错。1.3计算机中数和字符的表示

1.3.1数的表示

机器数与真值真值——人们所习惯的用+、-分别表示正、负的数。机器数——用0表示正,用1表示负所表示的数。1.3计算机中数和字符的表示

1.3.1数的表示

2.原码原码的最高位表示真值的数符,其余位为数值位,且与真值的数值位相同。1.3计算机中数和字符的表示

1.3.1数的表示

3.补码(1)补码定义

0≤X<2n-1

-2n-1≤X<0(MOD2n)(2)由真值求补码:①根据补码定义②简便方法:对于正数,通过补前0,将其数值部分补至n位;对于负数通过补前0,将其数值部分补至n位,然后按位取反并在末位加1。3.补码(3)由补码求真值

补码最高位为0,则真值数符为“+”,真值数值位与补码其余位相同;补码最高位为1,则真值数符为“-”,将补码所有位按位取反且末位加1后就可得到真值的数值位。3.补码(4)补码的表示范围及补码的扩展

n位补码所能表示的范围为-2n-1~+2n-1-1。需作补码扩展的场合:为了满足进行算术运算等方面的需要,有时要求将一个补码扩展成双倍位数,比如由8位补码扩展为16位补码,由16位补码扩展为32位补码等。扩展方法:将扩展的各位都置为原来补码的最高位。3.补码(5)补码的加减法运算补码加法规则:[X+Y]补=[X]补+[Y]补补码减法规则:[X-Y]补=[X]补+[-Y]补3.补码(5)补码的加减法运算【例1.16】补码加法运算。

十进制运算补码运算①41

00101001

+27

+000110116801000100②4100101001

+(-27)

+11100101141000011103.补码(5)补码的加减法运算【例1.16】补码加法运算。十进制运算补码运算

③

-4111010111

+27

+00011011-1411110010④-4111010111

+(-27)

+11100101-681101111003.补码(5)补码的加减法运算【例1.17】补码的减法运算。十进制运算补码运算①41

00101001

-27

+1110010114100001110

②4100101001

-(-27)

+0001101168010001003.补码(5)补码的加减法运算【例1.17】补码的减法运算。十进制运算补码运算

③

-4111010111

-(-27)

+00011011-1411110010④-4111010111

-27

+11100101-681101111004.反码反码的最高位表示真值的数符,0表示正,1表示负。当反码最高位为0,则其余位与真值的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论