第1章 基础知识1课件_第1页
第1章 基础知识1课件_第2页
第1章 基础知识1课件_第3页
第1章 基础知识1课件_第4页
第1章 基础知识1课件_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

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

文档简介

汇编语言的优点说明程序是如何与操作系统、处理器和BIOS接口的;说明数据是如何表示并存储在存储器与外部设备上的;阐述处理器是如何访问与执行指令的,以及指令是如何访问与处理数据的;阐述程序是如何访问外部设备的。使用汇编语言的理由能够直接访问与硬件相关的存储器或I/O端口;能够不受编译器的限制,对生成的二进制代码进行完全的控制;能够对关键代码进行更准确的控制,避免因线程共同访问或者硬件设备共享引起的死锁;能够根据特定的应用对代码做最佳的优化,提高运行速度;用汇编语言编写的程序比用高级语言编写的程序所要求的存储空间与执行时间将显著减少对于执行时间要求比较苛刻的部分,常常还要用汇编语言来重新编写;常驻程序(当其他程序运行的时候,常驻在存储器中的程序)和中断服务例行程序(处理输入与输出的程序)几乎都是用汇编语言开发的。第1章基础知识

本章是汇编语言程序设计的基础,包括进位计数制及不同基数的数之间的转换;二进制数和十六进制数运算;计算机中数和字符的表示和几种基本的逻辑运算。1.1进位计数制与不同基数的数之间的转换进位计数制是一种计数的方法,习惯上最常用的是十进制计数法,其特点是:

(1)数码的个数为十个:0,1,2,3,4,5,6,7,8,9;即其基为10(2)遵循逢十进一的规则;

(3)每一位数字都有相应的权,而且是基(10)的整数次幂;

(4)每一位数字乘以相应的权之和即为所表示的值。

例如1434.75=1*103+4*102+3*101+4*100+7*10-1+5*10-2说明:

(1)十进制不是唯一的进位计数制,日常用到的还有24小时为一天,即24进制;60分钟为一小时,即60进制。

(2)可推广到r进制:即基为r,有r个数码;逢r进一;每位数字的权为r的整数次幂,将每一位数字乘以相应的权即表示其值。1.二进数的特点:基为2,只有0,1两个数码,逢二进一;

2.为什么计算要用二进制,其原因是二进制数便存储及物理实现。

3.n位二进制数可以表示的数据个数为2n;比如,当n=3,可以表示8个数据,从000到111;当n=4,可以表示16个数据,从0000到1111。

4.几种常用的数制及其数码后缀字母:进位计数制基数数码后缀字母例十六进制十进制八进制二进制210820,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F0,1,2,3,4,5,,67,8,90,1,2,3,4,5,,670,1HDOB0A4B5H,1234H789或789D567O或567Q01110101B1.1.1二进制数

1.二进数转换为十进制数_将各非零位的权累加即可;

2.十进制数转换为二进制数;

(1)降幂法

(2)计算法整数:除2倒取余数小数:乘2顺取整数1.1.3十六进制数及其与二进制数之间的转换

1.十六进制数的表示基为16,数码为0~9,A~F;逢十六进一;

2.十六进制数和二进制数之间的转换

(1)十六进制数转换成二进制数:将每一位十六进制数用相应的四位二进制数表示即可。例如:2710H=0010011100010000B。1.1.2二进制数和十进制数之间的转换

(2)二进制数转换成十六进制数:从小点向两边每四位二进制数用一位相应的十六进制数表示,不足四位的用0补足。例如:1011010.01B=5A.4H3.十六进制数和十进制数之间的转换(1)十六进制数转换成十进制数:将每一位数乘以相应的权,然后累加即可。例如:2710H=2*163+7*162+1*16=10000D

(2)十进制数转换成十六进制数:最好借助于八进制数作桥梁,先将十进制数转换成八进制数,再将八进数转换成二进制数,最后将二进制数转换成十六进制数。例如:10000D转换成八进制数可用除8倒取余数的方式转换成23420O23420O转换成二进制数为10011100010000B10011100010000B转换成十六进制数为2710H1.2二进制和十六进制数运算1.2.1二进制数运算1.2.2十六进制数运算加法规则:逢二进一

0+0=00+1=11+0=11+1=10乘法归则:两个1相乘结果为1,其余为00*0=00*1=01*0=01*1=1加法:逢十六进一,例如减法:借位当作十六,例如

05C3H+ 3D25H 42E8H

3D25H- 05C3H 3762H真值:带符号的数据;机器数:符号数值化后的数据,用最高位表示符号位机器数的编码有两种:

(1)原码:也叫符号-绝对值表示法

(2)补码:正数---同原码负数---用2n-|绝对值|,其中n为字长。求法为除符号位外,其余各位求反加1。3.用补码表示数据的原因:便于运算的实现。4.n位二进制数补码数的表示范围:-2n-1~+2n-1-1

位数十进制数十六进制

n=8-128~+12780H~7FHn=16-32768~+327678000H~7FFFH5.补码数的扩展:用符号位填充高位字节。0表示正1表示负1.3计算机中数和字符的表示

1.3.1数的补码表示求补运算:对一个正数的补码表示按位求反再在末位加1,可以得到与此正数相应的负数的补码表示。补码表示数的特征:[X]补=>[-X]补=>[X]补补码的运算规则:

(1)补码的加法运算:[X+Y]补=[X]补

+[Y]补

(2)补码的减法运算:[X-Y]补=[X]补

+[-Y]补其中:[-Y]补只需对[Y]补做一次求补运算即可得到。运算结果的正确性:只要运算结果没有发生溢出,结果一定正确,无考虑符号位。求补求补1.3.2补码的加法和减法无符号数的表示范围:

n位二进制数无符号数的表示范围:0

~+2n-1

位数十进制数十六进制

n=80~2550H~FFHn=160~655350H~FFFFH2.无符号数的扩展:用0填充高位字节。1.3.3无符号整数字符包括:字母:A、B、…、Z、a、b、...z;

数字:0、1、…、9

专用字符:+、-、*、/、…

控制字符:BEL(bell响铃)、LF(LineFeed换行)、CR(CarriageReturn回车)…字符的编码:ASCII——美国标准信息交换代码编码长度:一个字节,只用低七位,最高位常用作校验位。编码个数:27=128个,其中:控制码33个,图形码85个。3.要求熟记的字符编码:控制符:响铃(07H)、回车(ODH)、换行(OAH)。图形符:空格(20H)、数字(30H)、大写字母‘A’(41H)

小写字母‘a’(61H)1.3.4字符表示法1.4.1“与”运算(AND):双目运算,常用于对指定位置0运算规则:只有当两个运算对象都是“1”时,“与”的结果才为1,其他为0。1.4.2“或”运算(OR):双目运算,常用于对指定位置1运算规则:只有当两个运算对象都是“0”时,“或”的结果才为0,其他为1。1.4.3“异或”运算(XOR):双目运算,常用于对指定位取反运算规则:只有当两个运算对象的值相异时,“异或”的结果才为1,否则为0。1.4.4“非”运算(NOT):单目运算,用于对各位求反。运算规则:“0”的非为“1”;而“1”的非为“0”。AA0110ABA∧BA∨BA∨B000 000101

温馨提示

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

评论

0/150

提交评论