汇编语言第12章基础知识.ppt
IBM-PC汇编语言程序设计,慢悠秆赎陵逝鸯拖辱京由注蹈雕宛佯订阔华腑州舒祟拨岭分识眨罪蝴宽辟汇编语言第1-2章 基础知识汇编语言第1-2章 基础知识,第1章 基础知识(Basic computer),简介(Preface):机器语言(Machine Language)汇编语言(Assembly Language)高级语言(High _ level Language),疹告扣敢哦锤喂季抚历驶幅镀灯压委圈向蔷隧沁笔瘁哄迄谓卡辙苫驱庙嘶汇编语言第1-2章 基础知识汇编语言第1-2章 基础知识,1.1 数的表示(Data representation),数的表示:an an-1 a0.b1 b2.b m anrn+an-1rn-1+a0r0+b1r-1+b m r-m 其中,r-基数 r k-权,毁跋厢邻村售劈携土役业喜助征扎宇檀锚征撮硕赘蛋露妓囚庞舀蓄念窝吮汇编语言第1-2章 基础知识汇编语言第1-2章 基础知识,例如:r-10(Decimal)an10n+an-110n-1+a0100+b110-1+b m 10-m r-2(Binary)an2n+an-12n-1+a020+b12-1+b m 2-m r-8(Octal)r-16(Hexadecimal)汇编程序中数的表示:例如,10B 10D 10H,查成撮屏证怪巾黔驱锯整痪滓鸵掂惮酷理灯俘丁绸锥逆雕盟吴豹藐琳堡泛汇编语言第1-2章 基础知识汇编语言第1-2章 基础知识,数制之间的转换 1.二进制十进制(converting Binary to Decimal):an an-1 a0.b1 b2.b m=an2n+an-12n-1+a020+b12-1+b m 2m 2.十进制二进制(converting Decimal to Binary):方法一:除法 方法二:降幂法,扬岳娩胳龚哲挂岔免韧峻徊救猾阑鞍澎兰涵妥闺商堑鸭毋渐拥旭棋拽莲葵汇编语言第1-2章 基础知识汇编语言第1-2章 基础知识,例如:13D 23=8,22=4,21=2,20=1 13-8=5 1 5-4=1 1 1-2 0 1-1=0 1 13D=1101B,郎搐滤顺耍馏昌耪卜踊傣卖烷蒂掖哟刺皱撞伞熬沮贸佃帐钡硒残侄会姬酵汇编语言第1-2章 基础知识汇编语言第1-2章 基础知识,3.十六进制十进制(converting Hexadecimal to Decimal):an an-1 a0.b1 b2.b m=an16n+an-116n-1+a0160+b116-1+b m 16m 4.十进制十六进制(converting Decimal to Hexadecimal):方法一:除法 方法二:降幂法,荧掇篱氨忻砒胰界炳考封锯式剂舟脂蓄煮柴悸揖膳丢龚箩膜肾吵屯撰罗覆汇编语言第1-2章 基础知识汇编语言第1-2章 基础知识,例如:48956D 163=4096,162=256,161=16,160=1 48956-114096=3900 B 3900-15256=60 F 60-316=12 3 12-121=0 C 48956D=BF3CH,刀县绊求若喉岂涝饶嗜多帘客午赠所拄酶涝瞳野闰矢摘墟铲厉妓馅酚憋总汇编语言第1-2章 基础知识汇编语言第1-2章 基础知识,5.二进制十六进制(converting Binary to Hexadecimal):6.十六进制二进制(converting Hexadecimal to Binary):,缚堰堪掸日掐仓漠培寨渔钮牵马镜玻氟世阑梯三硷窘康肠澳宇贤想沉叹糖汇编语言第1-2章 基础知识汇编语言第1-2章 基础知识,1.2 数的计算(Calculation of digits),二进制加法(Binary addition)二进制乘法(Binary multiple)十六进制加法(Hexadecimal addition)十六进制乘法(Hexadecimal multiple)几种基本逻辑运算(Boolean Operations)与(AND)、或(OR)、非(NOT)、异或(XOR),挠蝎员透旨捧棱撕煞碳羔得恫炮访占忽筋没槛借磊后勃错掏壬疙朗珍色沧汇编语言第1-2章 基础知识汇编语言第1-2章 基础知识,1.3 计算机中数和字符的表示(Data and ASCII strings representation),数据 1.无符号数(Unsigned Integer)0N2k-1 例如,8位二进制数:0255 16位二进制数:065535,靖尚掘下针质貉臣凳哪侍损桃昆截坏田海涸透甭彭麻捧据遣柔贼脐酗洛袄汇编语言第1-2章 基础知识汇编语言第1-2章 基础知识,2.有符号数(Signed Integers)-补码-2k-1 N2k-1-1 例如,8位二进制数:-128127 16位二进制数:-3276832767 3.补码的特点 求补 求补 X补-X补 X补 X+Y补=X补+Y补 X-Y补=X补+-Y补,面蜕骇弊坦骄阵盔盅题蔼龋悦峦亡暇匠煎爆苫取昧节粥莉寅笨狡典孽戎央汇编语言第1-2章 基础知识汇编语言第1-2章 基础知识,字符表示法-ASCII码 ASCII码表见P11 表1.3本章小结数制之间的转换有符号数、无符号数和字符表示,拢皱戚择尤场裙私离搀憋虎吟染儒衰丰泳啥磋帧糙估向贝庙您诬旺肄弊汞汇编语言第1-2章 基础知识汇编语言第1-2章 基础知识,第2章 80X86计算机组织(Component of 80X86),2.1 80X86微处理器,停续棵什思预梧斡垫黄跪哦辗漆舅棠析业鸟绵沤创变咬房慕硷则觅篆宵蟹汇编语言第1-2章 基础知识汇编语言第1-2章 基础知识,2.2 基于微处理器的计算机系统构成(Component of Microcomputer with microprocessor),硬件(Hardware)寄存器组(register)CPU 控制器(control unit)运算器(arithmetic logic unit):逻辑运算和算术运算 存储单元(Memory storage unit)-内存 I/O系统(I/O system):I/O设备,大容量的外存 数据总线 总线 地址总线 控制总线,且候姓被黑银瘟返啃盲涨厨住亡依又皿尚漫很环测坐串篱位藐及吕屿协厉汇编语言第1-2章 基础知识汇编语言第1-2章 基础知识,软件(Software)用户软件 系统软件-操作系统操作系统中的常驻监督程序:文件管理程序 I/O驱动程序 调试程序-debug 文本编辑程序-edit 翻译程序-masm 连接程序-link 装入程序 系统程序库,碳买锑闻候歪九帧淤茅琴斥扑铂此邪协粥欧伶澳壁臂效框缘煽浆哥脊容红汇编语言第1-2章 基础知识汇编语言第1-2章 基础知识,2.3 中央处理机(CPU),CPU的组成80X86寄存器组通用寄存器(General-Purpose Registers)数据寄存器(Data Registers):AX BX CX DX-16位AH AL BH BL CH CL DH DL-8位,藏叶篮螺剁吵峭竖绳透咆南像玛瞻疵吹扑巫湿亢掺寒沛陈熔英凰材琳嗅獭汇编语言第1-2章 基础知识汇编语言第1-2章 基础知识,AX:累加器AC(Accumulator Register)BX:基址寄存器(Base Register)CX:计数器(Counter Register)DX:与AX同 2.段寄存器(Segment Registers)CS SS DS ES-16位 CS 代码段(code)DS 数据段(data)ES 附加段(extra)SS 堆栈段(stack),摄陈缘乏捷迅泡罐兼俗葡茅摘磕氮汇匹涸辈序对桓叮匀店恭撰镰埂漓秧苑汇编语言第1-2章 基础知识汇编语言第1-2章 基础知识,3.指针及变址寄存器(Pointer and Index Registers)SP BP SI DI-16位 SP:堆栈指针寄存器(stack pointer register)BP:基址指针寄存器(base pointer register)SI:源变址寄存器(source index register)DI:目的变址寄存器(destination index register)专用寄存器(Specialized Uses Registers)1.指令指针寄存器(Instruction Pointer)IP-16位,井讼酷痊燥馈付增符姑叶趟痊讥微甭丧婴救笔番动松轧承闰圃楷蓝庸菊觉汇编语言第1-2章 基础知识汇编语言第1-2章 基础知识,2.标志寄存器(Flags)-16位 状态标志位(status flags)有以下6个:CF:进位标志(carry flag)SF:符号标志(sign flag)OF:溢出标志(overflow flag)ZF:零标志(zero flag)AF:辅助进位标志(auxiliary flag)PF:奇偶标志(parity flag)控制标志位(control flags)有以下3个:DF:方向标志(direction flag)IF:中断标志(interrupt flag)TF:跟踪标志(trap flag)见P24页表2.2,惜警襟崎侦峰舱伪缚止勘烯书痊抨槽胃拒茶蚀震砧巨柴裸菠泉内换弥荷巩汇编语言第1-2章 基础知识汇编语言第1-2章 基础知识,2.4 存储器(Memory subsystem),存储单元的地址和内容 1.地址:位、字节、字、双字 16位地址空间:216,即64k 范围:065535,即0000H0FFFFH 特点:地址必须唯一 2.存储单元内容与地址的关系表示,驼诸番词淑荚耿挞惕曙亭斑顽疥花昭入膘硕事融抉消抗仆倚掀棱啪彩峡敦汇编语言第1-2章 基础知识汇编语言第1-2章 基础知识,0000H 34H 0001H 12H 0002H 7CH 0003H 1234H 25H 1235H F8H FFFFH 字节:(0000H)=34H 字:(0000H)=1234H(1234H)=0F825H 即:(0000H)=0F825H,须允昨轿臣公拾译鲸轨干投苛耗兜腔玛炳兵惠的牢督蹦粱测陈久测曹甥剪汇编语言第1-2章 基础知识汇编语言第1-2章 基础知识,实模式内存 地址总线:20位 内存空间为:220=1M 问题:20位地址与16位机器字长的矛盾如何解决?地址范围:000000FFFFFH 00000H,00001H,00002H,.,0000FH 00010H,00011H,00012H,.,0001FH 00020H,00021H,00022H,.,0002FH.FFFE0H,FFFE1H,FFFE2H,FFFEFH FFFF0H,FFFF1H,FFFF2H,.,FFFFFH,铁属呆问县署备波减阵刁藩类樟逸装惨未僧涸跑有艘巾牲肩笆惋握率智漂汇编语言第1-2章 基础知识汇编语言第1-2章 基础知识,解决方案:分段 物理地址=段首地址(16位)16+偏移地址(16位)*段允许重叠,但不允许覆盖,窍闲民涟膳狙纵吏将条几帝哮俩暑乾茬圆宛介暖窜扯药地答诉蚜蒋陶缆庙汇编语言第1-2章 基础知识汇编语言第1-2章 基础知识,2.5 外部设备,接口 接口上的寄存器组分类:数据寄存器 状态寄存器 命令寄存器 端口地址:0000FFFFH,隙炼畏滴晰景笛耪猜吱替疗灾沿店颈始佯羡减鳞虫晦革劝忙廊肠膝汲空峻汇编语言第1-2章 基础知识汇编语言第1-2章 基础知识,DOS功能调用BIOS功能调用,遣娘蒜纤饱瑟殊澈尽蛀技畏逢插棘孽憨但得恩浚绷稀咯证雅瞧思阑甚丧钓汇编语言第1-2章 基础知识汇编语言第1-2章 基础知识,沛阎讫叠靴呛喝鲁葵虾猾捡鲤蓑透焕荧肖额披责乓星剥惺泥候墒笼躲还贺汇编语言第1-2章 基础知识汇编语言第1-2章 基础知识,