收藏 分销(赏)

IBM_PC汇编语言程序设计.ppt

上传人:xrp****65 文档编号:13332043 上传时间:2026-03-02 格式:PPT 页数:28 大小:1.19MB 下载积分:10 金币
下载 相关 举报
IBM_PC汇编语言程序设计.ppt_第1页
第1页 / 共28页
IBM_PC汇编语言程序设计.ppt_第2页
第2页 / 共28页


点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,*,IBMPC,汇编语言,程序设计(第2版),清华大学计算机系列教材 沈美名 温冬蝉 编著,计算机语言的发展,机器语言,FORTRAN,BASIC,COBOL,PASCAL,C/C+,JAVA,.,汇编语言,高级语言,汇编语言的特点,面向机器的低级语言,通常是为特定的计算,机或计算机系列,专门设计的。,保持了机器语言的优点,具有直接和简捷,的特点。,可有效地访问、控制计算机的各种硬件设备,如磁盘、存储器、,CPU、I/O,端口等。,目标代码简短,占用内存少,执行速度快,,是高效的程序设计语言。,经常与高级语言配合使用,应用十分广泛,。,#,include,stdafx,.h,#include,stdio,.h,int,main(,int,argc,char*,argv,),int,a,b,c;,a=1;,b=2;,c=a+b;,printf,(“c=%dn,c);,return 0;,编程实现,c=a+b,,并在屏幕上显示出结果,。,例1,编译后的目标文件达到3.59,KB,data segment,a db?,b db?,c db?,string db c=$,data ends,code segment,main proc far,assume,cs,:code,ds,:data,es,:data,start:,push,ds,sub ax,ax,push ax,mov,ax,data,mov ds,ax,mov es,ax,mov,a,1,mov,b,2,mov,al,a,add al,b,mov,c,al,lea,dx,string,mov,ah,09,int,21h,add c,30h,mov,dl,c,mov,ah,2,int,21h,mov,dl,0ah,int,21h,mov,dl,0dh,int,21h,ret,main,endp,code ends,end start,例 2.,C=a+b,汇编后的目标文件只有208字节,汇编语言的应用,系统程序、效率代码、,I/O,驱动程序,70%以上的系统软件是用汇编语言编写的。,某些快速处理、位处理、访问硬件设备等,高效程序是用汇编语言编写的。,高级绘图程序、视频游戏程序一般是用汇,编语言编写的,。,教师建议,目标:,了解汇编语言的特性及其编程技术,,建立起“机器”和“程序”、“空间”和,“时间”的概念。,建议:,充分注意“汇编”课实践性强的特点,,多读程序,多写程序,多上机调试程序,熟悉,PC,机的编程结构,,掌握汇编语言及其程序设计的基本概,念、方法和技巧,。,参考资料,1.80,X86,汇编语言程序设计,沈美明 温冬婵 清华大学出版社,2.,IBM PC,汇编语言与程序设计,PETER ABEL,编著,第4版 清华大学出版社.,PRENTICE HALL,第5版 人民邮电出版社,3.,IBM PC,汇编语言与程序设计例题习题集,温冬婵 沈美明,清华大学出版社,教学日历:,第一周 绪论,数制,数制之间的转换,数和字符的表示,运算,第二周 计算机组织,CPU,存储器,外部设备,寻址方式,第三周 指令系统(,1,),第四周 指令系统(,2,),BIOS,和,DOS,调用,第五周 上机过程,完整段定义和简化段定义格式,伪操作,第六周 循环与分支程序设计,子程序结构,第七周 高级汇编语言技术,I/O,程序设计,第八周 中断程序设计,复习,第1章 基 础 知 识,数制,数制之间的转换,运算,数和字符的表示,预 备 知 识,存储容量,1,K =1024 =2,10,(,Kilo,),1M=1024K =2,20,(,Mega,),1G =1024M=2,30,(,Giga,),1,个二进制位:,bit,(,比特),8个二进制位:,Byte,(,字节)1,Byte=8bit,2,个字节:,Word,(,字),1,Word=2Byte=16bit,1.数 制,数 制 基 数 数 码,二进制,Binary,2 0,1,八进制,Octal,8 0,1,2,3,4,5,6,7,十进制,Decimal,10 0,1,2,3,4,5,6,7,8,9,十六进制,Hexadecimal,16 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F,二进制,:基数为2,逢二进一,1101,2,=12,3,+12,2,+12,0,=13,10,十六进制,:基数为16,逢十六进一,1001,0001,1000,0111,9 1 8 7,=9 16,3,+1 16,2,+8 16,1,+7 16,0,2.数制之间的转换,二进制,十六进制,十进制,二进制,十进制,十六进制,降幂法 除法,二进制,十六进制,0011 0101 1011 1111,3 5,B F,0011,0101,1011,1111B=35,BFH,A 1 9 C,1010 0001 1001 1100,A19CH=1010,0001,1001,1100B,1011,B =2,3,+2,1,+2,0,=11D,降幂法 除法,例,:,27,D=?B,27 11 3 3 1,-,2,n,16 8 4 2 1,1 1 0 1 1,27D=11011B,二进制,十进制,十六进制,十进制,BF3CH=1116,3,+1516,2,+316,1,+1216,0,=48956D,降幂法 除法,例,:,399,D=?H,399 143 15 399/16,24/161/16,0,-,16,n,256 16 1 F 8 1,1 8 F,399D=18FH,算术运算,二进制数:,逢二进一 借一为二,加法规则 乘法规则,0+0=0 0,0=0,0+1=1 0,1=0,1+0=1 1,0=0,1+1=0(,进位,1)1,1=1,3.运算(算术运算和逻辑运算),0 5,C 3 H,3 D 2 5 H,4 2 E 8 H,3,D 2 5 H,0 5 C 3 H,3 7 6 2 H,1,1,十六进制数:,逢十六进一 借一为十六,逻辑运算(,按位操作,),“与”运算(,AND)“,或”运算(,OR),A B A,B A B A,B,0 0 0 0 0 0,0 1 0 0 1 1,1 0 0 1 0 1,1 1 1 1 1 1,“,非”运算(,NOT),“,异或”运算(,XOR),A,A,A B A,B,0 1 0 0 0,1 0,0 1 1,1 0 1,1 1 0,例,:,X=00FFH Y=5555H,,求,Z=X,Y=?,X=0000 0000 1111 1111 B,Y=0101 0101 0101 0101 B,Z=0101 0101 1010 1010 B,Z=55AAH,4.数和字符的表示,计算机中正负,数的表示,7 6 5 4 3 2 1 0,符号位,数值位,假设机器,字长,为16位:,符号位=0 正数,数值位,=,1 负数,15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0,假设机器,字长,为8位:,H.O.Byte,L.O.Byte,H.O.Nibble,L.O.Nibble,数的常用表示法,原码 反码 补码,原码表示法,:符号+绝对值,例:,n=8bit,+3,原码,=0 000,0011 =03,H,-3,原码,=1 000,0011 =83,H,+0,原码,=0 000,0000 =00,H,-0,原码,=1 000,0000 =80,H,0,的表示不惟一,反码表示法,:,正数的反码同原码,负数的反码数值位与原码相反,例:,n=8bit,+5,反码,=0 000,0101 =05,H,-5,反码,=1 111,1010 =,FA,H,+0,反码,=0 000,0000 =00,H,-0,反码,=1 111,1111 =,FFH,0,的表示不惟一,例:机器字长8位,-46,补码,=,?,46,补码,=0 0 1 0 1 1 1 0,1 1 0 1 0 0 0 1,1 1 0 1 0 0 1 0 =,D2H,机器字长16位,-46,补码,=,FFD2H,+0,补码,=0 0 0 0 0 0 0 0,1 1 1 1 1 1 1 1,0 0 0 0 0 0 0 0 =-0,补码,0,的表示,惟一,按位求反,末位加一,按位求反,末位加一,补码,(,Twos Complement),表示法:,正数的补码:,同原码,负数的补码,:,(1),写出与该负数相对应的正数的补码,(2),按位求反,(3),末位加一,十进制 二进制 十六进制 十进制 十六进制,n=8 n=16,+127 0111 1111 7F +32767 7FFF,+126 0111 1110 7E +32766 7FFE,.,+2 0000 0010 02 +2 0002,+1 0000 0001 01 +1 0001,0 0000 0000 00 0 0000,-1 1111 1111 FF -1 FFFF,-2 1111 1110 FE -2 FFFE,.,-126 1000 0010 82 -32766 8002,-127 1000 0001 81 -32767 8001,-128 1000 0000 80 -32768 8000,n,位二进制补码的表数范围:,-2,n-1,N,2,n-1,-1,无符号整数的表数范围:,0,N,2,n,-1,补码的加法和减法:,求补运算,:,对一个二进制数按位求反、末位加一,X,补码,-,X,补码,X,补码,加法规则,:,X+Y,补码,=,X,补码,+,Y,补码,减法规则,:,X-Y,补码,=,X,补码,+,-,Y,补码,补码减法可转换为补码加法,64,(-46),18,0100 0000,1101 0010,0001 0010,例:,进位和溢出,进位:,由于运算结果超出了位数,最高有效位向,前的进位,这一位自然丢失,一般不表,示结果的对错。,溢出:,表示结果超出了字长允许表示的范围,,一般会造成结果出错。,例:(64)11000000 127 01111111,64 01000000 +1 00000001,0 1 00000000 128,10000000,进位 溢出,字符的表示,ASCII,码,:用一个,字节,来表示一个字符,低7位,为字符的,ASCII,值,最高位一般用作,校验位。,例:,A 41H,a 61H,1 31H,换行 0,AH,回车 0,DH,空格 20,H,第1章作业,Page 14,1.11.8,
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 百科休闲 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服