IBMPC汇编语言程序设计_第1页
IBMPC汇编语言程序设计_第2页
IBMPC汇编语言程序设计_第3页
IBMPC汇编语言程序设计_第4页
IBMPC汇编语言程序设计_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

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

文档简介

IBMPC汇编语言程序设计(第2版),清华大学计算机系列教材沈美名温冬蝉编著,计算机语言的发展,机器语言,FORTRANBASICCOBOLPASCALC/C+JAVA.,汇编语言的特点面向机器的低级语言,通常是为特定的计算机或计算机系列专门设计的。保持了机器语言的优点,具有直接和简捷的特点。可有效地访问、控制计算机的各种硬件设备,如磁盘、存储器、CPU、I/O端口等。目标代码简短,占用内存少,执行速度快,是高效的程序设计语言。经常与高级语言配合使用,应用十分广泛。,#includestdafx.h#includestdio.hintmain(intargc,char*argv)inta,b,c;a=1;b=2;c=a+b;printf(“c=%dn,c);return0;,编程实现c=a+b,并在屏幕上显示出结果。,例1,编译后的目标文件达到3.59KB,datasegmentadb?bdb?cdb?stringdbc=$dataendscodesegmentmainprocfarassumecs:code,ds:data,es:datastart:pushdssubax,axpushaxmovax,datamovds,axmoves,ax,mova,1movb,2moval,aaddal,bmovc,alleadx,stringmovah,09int21haddc,30hmovdl,cmovah,2int21hmovdl,0ahint21hmovdl,0dhint21hretmainendpcodeendsendstart,例2.C=a+b,汇编后的目标文件只有208字节,汇编语言的应用系统程序、效率代码、I/O驱动程序70%以上的系统软件是用汇编语言编写的。某些快速处理、位处理、访问硬件设备等高效程序是用汇编语言编写的。高级绘图程序、视频游戏程序一般是用汇编语言编写的。,教师建议目标:了解汇编语言的特性及其编程技术,建立起“机器”和“程序”、“空间”和“时间”的概念。建议:充分注意“汇编”课实践性强的特点,多读程序,多写程序,多上机调试程序,熟悉PC机的编程结构,掌握汇编语言及其程序设计的基本概念、方法和技巧。,参考资料1.80X86汇编语言程序设计沈美明温冬婵清华大学出版社2.IBMPC汇编语言与程序设计PETERABEL编著第4版清华大学出版社.PRENTICEHALL第5版人民邮电出版社3.IBMPC汇编语言与程序设计例题习题集温冬婵沈美明清华大学出版社,教学日历:第一周绪论数制数制之间的转换数和字符的表示运算第二周计算机组织CPU存储器外部设备寻址方式第三周指令系统(1)第四周指令系统(2)BIOS和DOS调用第五周上机过程完整段定义和简化段定义格式伪操作第六周循环与分支程序设计子程序结构第七周高级汇编语言技术I/O程序设计第八周中断程序设计复习,第1章基础知识,数制数制之间的转换运算数和字符的表示,预备知识,存储容量1K=1024=210(Kilo)1M=1024K=220(Mega)1G=1024M=230(Giga)1个二进制位:bit(比特)8个二进制位:Byte(字节)1Byte=8bit2个字节:Word(字)1Word=2Byte=16bit,1.数制,二进制:基数为2,逢二进一11012=123+122+120=1310十六进制:基数为16,逢十六进一1001,0001,1000,01119187=9163+1162+8161+7160,2.数制之间的转换,二进制十六进制十进制二进制十进制十六进制,降幂法除法,二进制十六进制001101011011111135BF0011,0101,1011,1111B=35BFHA19C1010000110011100A19CH=1010,0001,1001,1100B,1011B=23+21+20=11D降幂法除法例:27D=?B2711331-2n1684211101127D=11011B,二进制十进制,十六进制十进制BF3CH=11163+15162+3161+12160=48956D降幂法除法例:399D=?H39914315399/1624/161/160-16n256161F8118F399D=18FH,算术运算二进制数:逢二进一借一为二加法规则乘法规则0+0=000=00+1=101=01+0=110=01+1=0(进位1)11=1,3.运算(算术运算和逻辑运算),05C3H3D25H42E8H,3D25H05C3H3762H,1,1,十六进制数:逢十六进一借一为十六,逻辑运算(按位操作),“与”运算(AND)“或”运算(OR)ABABABAB000000010011100101111111“非”运算(NOT)“异或”运算(XOR)AAABAB0100010011101110,例:X=00FFHY=5555H,求Z=XY=?X=0000000011111111BY=0101010101010101BZ=0101010110101010BZ=55AAH,4.数和字符的表示,计算机中正负数的表示,76543210,符号位数值位,假设机器字长为16位:,符号位=0正数数值位=1负数,1514131211109876543210,假设机器字长为8位:,H.O.Byte,L.O.Byte,H.O.Nibble,L.O.Nibble,数的常用表示法原码反码补码原码表示法:符号+绝对值例:n=8bit+3原码=0000,0011=03H-3原码=1000,0011=83H+0原码=0000,0000=00H-0原码=1000,0000=80H0的表示不惟一反码表示法:正数的反码同原码,负数的反码数值位与原码相反例:n=8bit+5反码=0000,0101=05H-5反码=1111,1010=FAH+0反码=0000,0000=00H-0反码=1111,1111=FFH0的表示不惟一,补码(TwosComplement)表示法:正数的补码:同原码负数的补码:(1)写出与该负数相对应的正数的补码(2)按位求反(3)末位加一,n位二进制补码的表数范围:-2n-1N2n-1-1,无符号整数的表数范围:0N2n-1,补码的加法和减法:求补运算:对一个二进制数按位求反、末位加一X补码-X补码X补码加法规则:X+Y补码=X补码+Y补码减法规则:X-Y补码=X补码+-Y补码补码减法可转换为补码加法,64(-46)18,010000001101001000010010,例:,进位和溢出进位:由于运算结果超出了位数,最高有效位向前的进位,这一位自然丢失,一般不表示结果的对错。溢出:表示结果超出了字长允许表示的范围,一般会造成结果出错。例:(64)1100000012701111

温馨提示

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

评论

0/150

提交评论