工业用微型计算机.doc_第1页
工业用微型计算机.doc_第2页
工业用微型计算机.doc_第3页
工业用微型计算机.doc_第4页
工业用微型计算机.doc_第5页
已阅读5页,还剩69页未读 继续免费阅读

下载本文档

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

文档简介

第一章 微型计算机基础本章内容:微型计算机的发展;计算机中的数制和编码;微型计算机的组成,典型微处理器的特点,系统主机板的配置。本章重点是第二节和第四节,应掌握计算机中无符号数和有符号数的表示方法,各种数制的转换关系,8086/8088CPU中的功能结构和各个寄存器的用途与存储器的结构,了解计算机的工作原理。本章学习方法是识记计算机的发展和组成,8086/8088微处理器的结构,计算机的数制部分应通过做练习题掌握。一、要点与要求1掌握微机的发展和分类。2熟练掌握不同进位计数制的各种题型(十进制、二进制、十六进制)之间的相互转换及各种常用编码系统,对进位计数制的各种题型(单项选择、填空、分析计算),应于12分钟内写出答案。3掌握微型计算机的组成,包括硬件、软件和外部设备,了解常用工业控制计算机。4微处理器相当复杂,应重点掌握8086/8088编程中需要的寄存器,并进一步了解高档微处器的特点。二、典型例题用填写表格的形式学习无符号数,带符号数的原码、反码、补码,各种进制的转换关系。用例1-1 表1-1为已知带符号数的真值(十进制数),求其对应的原码、反码、补码(用十六进制表示)。真值(十进制)原码(十六进制)反码(十六进制)补码(十六进制)-119F7H88H89H+11977H77H77H-70C6HB9HBAH-100083E8HFC17HFC18H-128(举例)算法说明:例如:真值为-119的原码,首先,计算119对应的十六进制数为77H,则-119的原码即是BIT7=1,或77H+80H=F7H。补码的快速求法是100H-77H=89H。因为,补码=反码+1,故反码=88H。也可以把F7H=11110111B,除符号位外按位求反,得反码为10001000B=88H,补码为89H,但这样作速度较慢。建议,用十六进制计算时,先求原码,再求补码,最后求反码。计算正数则比较容易,如+119,其原码、反码、补码都为77H。应通过不同的数,反复练习,掌握各种进制的转换关系。例1-2 表1-2为已知无符号数(十进制数),求其对应的二进制数和十六进制数。 表1-2十进制无符号数真值对应的十六进制数对应的二进制数2001D07D1H0000 0111 1101 0001B120D78H0111 1000B32766D7FFEH0111 1111 1111 1110B若给定的数在0255之间,结果应在1.5分钟算出;若给定的数在065535之间,应借助计算器快速完成。例1-3表为已知机器数,求其在不同码制下对应的真值(十进制数)。 表1-3机器数无符号数原码反码补码BCD码ASCII码FFH255-127-0-1 没有没有81H129-1-126-12781没有3FH63+63+63+63没有字符“?”8123H33059-291 -32476-324778123没有F6H246 -118-9-10没有没有45H69 +69+69+6945字符“E” 算法:例如:81H作为无符号数,对应的十进制数是8*16+1=129,但此机器数作为原码时(即10000001B),最高位于,故为负数,数值部分=1,故真值=-1。当作为补码时,若是负数,真值计算方法为100H-81H=7FH,而十进制数是127(81H的补数),故真值为-127。若是反码,其真值为-126。 很明显,补码的真值-127的绝对值与无符号数129之和=256=100H。 最高位为0的机器数,计算非常简单。例如,机器数45H,当作为无符号数时,对应的十进制数4+5=69,而此时原码=反码=补码=+69,而45(岁、斤)的BCD码放在计算机中,其机器数也只能写成45H,此时,4是十位,5是个位。 表1-3中,机器数8123H是16位二进制数,计算比较繁琐。考试时,一般不会出花费较多时间的题目,但应该理解16位直到64位机器数所代表的真值:当作为无符号数时,8123H=8;当作为补码时,若是负数,真值的计算是10000H-8123H=7EDDH,而7EDDH=,或用65536-33059=32477,故真值=-32477;当作为反码时,其真直接得-32477,与补码差1;当作为原码时,最高位为1,数值部分为123H=,故真值为-291。应掌握8位二进制机器数转换成各种码制下的真值。三、练习题(一)单项选择题(在备选答案中选择一个正确答案,将其序号写在题干的括号内)18位二进制所表示的无符号整数,其相应的十进制数范围是( )。0255 1256 1255 025628位二进制原码所表示的整数,其相应的十进制数范围是( )。0255 -127 +127 -128+127 -128+12838位二进制补码所表示的整数,其相应的十进制数范围是( )。0255 -127 +127 -128+127 -128+12848位二进制反码所表示的整数,其相应的十进制数范围是( )。0255 -127 +127 -128+127 -128+128581H是用8位二进制原码表示是十六进制数,其相应的十进制数是( )。+1 +81 -127 -16十进制数-111用二进制补码表示,补码是( )。6FH EEH 90H 91H7十进制数-2用二进制补码表示,补码是( )。FDH 02H FEH 82H8十进制数-126用二进制补码表示,补码是( )。FEH 83H 81H 82H9十进制数-99用二进制补码表示,补码是( )。643H 9CH 9EH 9DH1016位二进制无符号数,相应的十进制数范围是( )。165536 065532 064000 06553511十进制无符号数7.5用二进制数表示,应该是( )。0111.1000B 0111.0101B0111.111B 0111.0111B128位二进制补码所表示的带符号整数,其最小的十进制数是( )。-127 -128 1 013十六进制数9DH转换成二进制数表示,是( )。1001 1101B 1000 1001B 0001 1011B 1001 1011B14二进制数1101 0111B转换成十六进制数表示,是( )。D7H 6BH A7H B7H15十进制数25转换成二进制数表示,是( )。1101 0111B 1000 1101B 1101 1111B 1111 0101B16字符“F”的ASCII码是( )46H OFH 70H 62H17字母“b”的ASCII码是( )11H 0BH B0H 62H18字符“6”的ASCII码是( )0000 0110B 1001 0000B 1001 1001B 0011 0110B1935H是某个字符的ASCII码,则此字符是( )8 3 5 2(二)填空题1已知十进制数-70,求其补码是为(BA )H。2十进制数111用8位二进制数表示时,应为( 01101111 )B。3十进制数-111用8位二进制数补码表示时,应为(91 )H。4十进制数-128用8位二进制数补码表示时,应为( 80 )H。538岁的博士生,年龄作为BCD码,在计算机中的机器数为( 38 )H。6已知DS=1234H,EA=5678H,此内存的物理地址=( 179B8 )H。7已知某个内存,物理地址为34568H,其段地址和偏移地址为( 段地址和和偏移地址不唯一,如段基地址=3400H,偏移地址=0568H,其它还有很多解 )。8代码段,CS=3456H,IP=0100H,内存的物理地址为( 34660 )。9堆栈段,SS=89A0H,SP=8000H,该堆栈的物理地址为( 91A00 )。1080286的字长是( 16 )位,80386DX的字长是( 32 )位,80486DX的字长是( 32 )位,80586(Pentium)字长是( 64 )位。(三)问答题1世界上第一台电子计算机是哪一年、哪个国家问世?微型计算机在什么时间问世? 答:第一台电子计算机于1946年在美国问世。微型计算机1971年问世。2简述计算机分类? 答:巨型机(如银河系列)、大型机、中型机、小型机和微型计算机。3什么是微处理器?微处理器的发展经历了几代? 答:微处理器是微型计算机的核心芯片,是将计算机中的运算器和控制器等部件集成在一起的集成电路,也称为CPU。其发展经历了五代,从低档8位微处理器、中高档8位微处理器、16位、32位到64位微处理(PENTIUM)。4微处器的最新发展成果是什么? 答:最新发展成果是Pentium-II。目前市场上最高速度为550MHZ。但由于它有序列号,人们使用时为安全性而担忧。AMD Athlon是比奔腾III性能更优的微处理器芯片。据介绍,AMD公司推出的650MHZ微处理器,是当今运行速度最快的X86电脑处理器。随着技术进步和市场竞争,新的微处理器还会不断更新。5简述我国计算机研制的现状? 答:大型计算机银河号已经为国防部门使用;中科院曙光计算机已作为网络服务器。但CPU等硬件主要依靠美国等国家,与先进国家还有差距。6简述现代计算机向多媒体和网络化发展的情况? 答:现代计算机式向着多媒体和网络化发展。21世纪的计算机是网络世界。将计算机加入内置或外接的调制解调器,可以通过电话线拨号上网;也可以通过光缆等载体,计算机上加入网卡,即可以上网。通过网络,可以收发EMAIL、传真(FAX),浏览信息、报纸,进行远程教育、电子商务,看病等,网络正在改变着人们的生活。多媒体是指具有多种媒体的计算机。该计算机象人一样,有听觉(录音设备、声音的数据采集器),有视觉(CCD摄像头,摄像机),有口(会讲话、唱歌扬声器与传感器),有触觉,有嗅觉等。能够识别图形、图像,也能够播放图像、电影。目前,计算机里有了声卡(全双工立体声)、话筒、音箱、高速光盘驱动器、扫描仪、摄像机等,加上软件,可打网络电话、听歌曲等。多媒体计算机的发展,除了硬件外,关键是数据压缩、接压缩软件。多媒体数据传输标准已经制定。7在机电一体化领域,常使用哪几种工业用微型计算机? 答:常使用PC总线(包括PCI总线)工业计算机、单片机(包括DSP)、PC/104总线嵌入式工控机、PLC可编程控制器。且都可联网。8微型计算机内硬件和软件两部分组成,说明硬件和软件又由哪几部分组成?画出其层次结构。 答:硬件部分包括计机和外部设备。主机包括CPU(微处理器)、存储器、输入/输出工接口。外部设置包括计算机运行必备的外部设备,如键盘、鼠标、扫描仪、显示器、打印机、光盘驱动器、硬盘驱动器、软盘驱动器等。另一类外部设备包括工业控制计算机的测控对象,如数控机床、XY工作台、测量现场中的传感器等。 软件部分包括系统软件和应用软件。系统软件包括操作系统、编译程序、自诊断程序、文字处理程序、工具软件、数据库管理程序等。应用软件包括用户为解决工程实际问题而编写的各种应用程序,如控制程序。9内存起什么作用?8086/8088微处理器寻址多少内存? 答:内存是计算机主机内重要的组成部分,是微型计算机的存储和记忆部件,用以存放程序代码和数据。8086/8088微处理器寻址1024KB(或1MB)内存。10微型计算机使用哪些操作系统?目前你常用的操作系统是什么?为什么LINUX在中国受到重视? 答:使用的操作系统有DOS、WINDOWS、UNIX、LINUX。因为LINUXS是自由软件,所以在中国受到重视。而美国微软公司(Microsoft)所研制的WINDOWS,内核代码不公开,在信息时代,网络安全得不到保障。我国非常重视开发具有我国知识产权的基于LINUX操作系统的各种软件,以保证信息安全,保护国防和国家机密。11微型计算机的系统软件和应用软件是什么? 答:见教材12页12微型计算机怎么分类? 答:一般分为: 按字长分:4位机、8位机、16位机、32位机、64位机。 按结构分:单板机、多板机、单片机。目前,一般家庭用、办公用和商为用,都是具有立式或卧式机箱的多板计算机,也称PC(个人计算机)。13微型计算机的常用外部设备有哪些?其中,哪些是输入设备?哪些是输出设备?哪些既是输入又是输出设备? 答:键盘、鼠标、扫描仪是输入设备。CRT显示器、打印器、绘图仪是输出设备。光盘驱动器一般输入设备(CD-ROM),但光盘刻录机是输出设备。软盘、硬盘既是输入又是输出设备。一个控制设备可能既是输出(控制)又是输入(测量)设备。14简述微型计算机(如IBM-PC/XT),或你了解的386、486、586)硬件配置。 答:一般,办公自动化或家用计算机的配置是主板、电源(220V,50HZ输入/输出5V,12V)、显示卡、具有软盘、硬盘的驱动器接口、打印机口(LPT1)、串行口(COM1、COM2)的多功能卡、网卡或调制解调器(用于联接网络)、键盘、彩色显示器、鼠标等即可构成计算机硬件,配置合适的操作系统软件,构成一台完整的计算机。主板包括CPU、内存条、BIOS、多功能组件:相当于2个8259,2个8237,1个8253(或8254),8255,动态RAM读写出刷新电路的组件、键盘接口等,有的主板把鼠标、打印机口(LP1)、串行口(COM1,COM2)、甚至调制解器等作在主板上。内存条基本为16MB,32MB、64MB、128MB。CPU为赛阳或PENTIUM-II,PENTIUMIII或公司的K6、K7等,CPU上有风扇。158086/8088的功能结构是什么?答:见教材16页图1-5168086、8088的内部寄存器有哪些?其中,哪些是段寄存器?哪些是指针寄存器?答:8086/8088的内部寄存器有通用寄存器、段寄存器、控制寄存器。通用寄存器有AX、BX、CX、DX,均为16位寄存器,它们可以拆分为8个位寄存器:AH、AL、BH、BL、CH、CL、DH、DL。指针寄存器是SP、BP。变址寄存器是SI、DI。段寄存器为CS、DS、SS、ES。控制寄存器为IP、FLAGS(标志寄存器)。17标志寄存器起什么作用?八个重要的标志是什么?答:标志寄存器表明CPU运算和控制的状态,也是16位。其中,6个状态标志和2个控制标志,其余7位没有定义。八个重要标志是SF、CF、ZF、OF、AF、PF、DF、IF。188086/8088CPU有多少个引脚?什么是最大模式?什么是最小模式?8086/8088CPU可以靠引脚怎样改变其工作模式?答:8086/8088CPU有40个引脚,最大模式指除CPU外,还接其它处理器(高速浮点运算协处理器)。最小模式指单处理器模式(即只接入CPU)。8086/8088CPU可以靠MN/引脚,接地为最大模式,接+5V为最小模式。198086/8088的存储器如何管理?知道逻辑地址后如何求物理地址?已知物理地址,求逻辑地址唯一吗?答:8086/8088存储器用16位段基地址和16位偏移地址进行管理,由这两个地址形成20位物理地址。 通常,把段基地址和偏移地址称为逻辑地址,CPU能够根据内存单元的逻辑地址确定其物理地址。方法是将段基地址左移4位后再与偏移地址相加,得到该内存单元的20位物理地址,如图1-1所示。 图1-1例如,某内存单元处于数据段中,DS的值为6832H,偏移地址为1280H,则此内存的物理地址是68320H+1280H=695A0H。但已知物理地址,求段地址和偏移地址(或者求逻辑地址)不唯一。2080286/80386SX、80386DX、80486微处理器的数据线、地址线各为多少?可寻址的物理空间是多少?答:80268微处理器,数据线16条,地址线24根,可寻址的物理空间16MB。80386SX微处理器,数据线16根(对外),地址线32根,可寻址的物理空间4096MB。80386DX微处理器,数据线32根,地址线32根,可寻址的物理空间4096MB。80486微处理器,数据线32根,地址线32根,可寻址的物理空间4096MB。21上题中,微处理器的工作方式是什么?各配什么协处理器?答:80286的工作方式有实地址方式和虚地址保护模式。实地址方式是一个快速8086。在虚地址保护模式下,80286可寻址16MB的物理空间,并能够提供1000MB(2)的虚拟地址空间,适于多用户系统。可配接浮点处理器80287,使浮点运算速度加快。80386有三种工作方式:实地址方式、虚地址方式及虚拟8086方式。实地址方式下是个高速8086/8088。虚地址保护方式下可寻址4KMB(2)物理地址及64MMB虚拟地址空间。80386SX配接浮点处理器80287,80386DX配接80387,使浮点运算速度大大加快。80486也是三种工作方式:实地址方式、虚地址保护方式及虚拟8086方式,也可寻址4KMB物理地址和64MMB虚拟地址。80486芯片实际上是将80386、80387及8KB高速缓存集成一起,因此,具有80386的所有功能。它的存储器管理部件也由分段部件和分页机构组成,有4级保护机构,支持虚拟存储。80486内部有浮点处理器,不需外接。80486内部寄存器:包括80386和80387的全部寄存器,8KB超高速缓存可存放常用数据和指令,减少对外部总线的访问。使用R1SC技术,可减少指令的执行时间,芯片内的浮点部件与算术逻辑部件的操作为并行。上述特点,使80486比80386的性能提高很多。22Pentium微处理器的数据线和地址线是多少?Pentium-III有什么特点?答:Pentium(也叫80586)是第五代微处理器。该芯片集成了310万个晶体管,有64条数据线,36条地址线。其内部浮点部件在80486基础上进行了重新设计。Pentium-II和Pentium-IIIr 性能更有所提高,特别是在多媒体和网络各方面做了重大忙改进。四、教材习题答案1先转换成十六进制数,小数点后的计算为0.375,应为0.6H,故,再转换成二进制数,如此计算速度快.(1) (2)(3)(4)2(1) (2) (3) (4)3见表1-4 表1-4真值(十进制)原码(十六进制)反码(十六进制)补码(十六进制)+1237B7B7B-123FB8485-181FEFF-99E39C9D-70C6B9BA4见表1-5 见表1-5机器数无符号数原码反码补码BCD码99H153D-25D-102D-103D99D86H134D-6D-121D-122D86DBAH186D-58D-69D-70D没有43H67D+67D+67D+67D43DFAH250D-122D-5D-6D没有5见教材13页。6见教材11页图1-1。7通用数据寄存器:16位的有AX、BX、CX、DX,8位的有AH、AL、BH、BL、CH、CL、DH、DL。 地址指针寄存器:堆栈指针寄存器SP,基址指针寄存器BP。 变址寄存器:源变址寄存器SI,目的变址寄存器DI。 段寄存器CS、SS、DS、ES:代码段寄存器CS,堆栈段寄存器SS,数据段寄存器DS,附加数据段寄存器ES。段寄存器用于存放段基址。 控制寄存器IP、FLAGS:指令指针寄存器IP,标志寄存器FLAGS,-16位。、8见表1-6 表1-6微处理器型号8086/80888028680386SX/DX80486DX80586字长16/81616/323264可寻址范围1MB16MB4096MB4096MB16配协处理器80878028780287/80387内部有,不外接内部有,不外接地址线20根24根32根32根36根9(1)PC总线工业控制计算机,19英寸机箱,现在大多数ISA、PCI总线都有的无源底板。 (2)PC/104总线嵌入式工控机,90mm的CPU卡和配套模块。(3)可编程控制器PLC及其工业控制系统。采用ROCKWELL、OMRON、日立等公司的PLC。(4)单片机8051、8096、68HC05、68HC11等组成的单片机系统。1049424D2D504320434F4D50555445521BM-PC空格COMPUTER第二章 8086/8088微处理器的指令系统一、 要点与要求学习指令,首先要掌握寻址方式,进而编写含有指令的程序段,并利用DEBUG上机检验运行结果,比单纯识记指令便于记忆、掌握。8086/8088指令系统中共有92种基本指令,按照功能,可以分为以下六大类: 数据传送指令算术运算指令逻辑运算和移位指令串操作指令控制转移指令处理器控制指令。 二、重点难点 重点:寻址方式;指令系统中的传送,算术指令和控制转移指令。 难点:存储器操作数寻址,领会读写存储器操作数时的段地址、有效地址和物理地址的关系;堆栈的概念、操作指令及其应用,过程调用指令CALL执行时堆栈指针SP和堆栈内容的变化。 要求领会算术运算后标志寄存器中有关标志(SF、OF、CF、ZF、AF)的变化以及在程序控制转移时的作用,并编写简单应用的程序段。 掌握各种常用指令的用法(主要是数据传送、算术运算、逻辑运算及控制转移指令),并会利用DEBUG调试程序上机,编写程序段和运行程序段,查看标志的变化、存储器和各寄存器的内容。(一) 寻址方式一览(表2-1)应理解基址-变址寻址方式,其它如寄存器间址、变址、基址都可以由此而衍生出来。 (二)8086/8088指令系统(表2-2) 上述指令中,数据传送指令最容易掌握,但其中的堆栈操作指令是难点。其次,算术和逻辑运算指令,是干活的指令,要掌握指令对标志的影响。 表2-1寻址方式一览表寻址方式操作数地址(PA物理地址)指令格式举例立即寻址操作数由指令给出MOV DX,300H;(DX)300H寄存器寻址操作数在寄存器中ADD AL,87H;(AL) (AL)+87H直接寻址操作数的有效地址由指令给出MOV AX,100H,MOV AL,VI等寄存器间址(BX)PA=(DS)PA=(SS)MOV AL,BXMOV AX,SI;(AX)MOV AX,DIMOV BX,BP基址-变址寻址PA=(DS)位移量PA=(DS)位移量PA=(SS)位移量PA=(SS)位移量MOV AX,DISPBXSIMOV DX,DISPBXDIMOV AX,DISP1BPSPMOV CX,DISP2BPDI变址寻址把上述寻址去掉基址BP,BXMOV AX,DISP3SI及MOV AL,DI+678H基址寻址把基址-变址寻址去掉变址SI,DIMOV AX,BP+6及MOV AL,BX+78H编写程序,还必须掌握跳转指令,包括过程调用(子程序调用)和中断指令。串操作不是最基本的指令,而是加快操作的指令,不作重点。 (三)DEBUG操作一览(表2-3) 也可以在键入DEBUG回车后,出现在提示符“一”,再键入“?”,回车即出现上述命令。 (四)标志(表2-4)三、典型例题本章题型,根据Z80试卷,应该为单项选择题、填空题、程序阅读题。例2-1 8086/8088CPU的指令格式是什么? 一条指令中,主要包括两部分。一部分是指令的操作码,指出进行什么样的操作,是加减运算、逻辑运算还是数据传送;另一部分是操作数,指出操作数放在什么地方和送到什么地方。有的指令只有一个操作数,有的指令有两个操作数(源操作数和目的操作数),也有的指令没有操作数。8086/8088CPU具有多种对操作数进行寻址的方式。例2-2寻址方式的含义是什么?通常是指CPU指令中规定的寻找操作数所在地址的方式。一般,操作码的地址很容易寻找,因为,一条指令执行后,接着执行下一条,除非跳转。寻址方式仅讨论操作数的地址如何寻找。所以寻找操作数或操作数所在地址的方式,叫做寻址方式。例2-3 8086/8088CPU有几种寻址方式?有几种操作数? 共有七种寻址方式: 立即寻址 例如助记符指令:MOV AL ,76,其机器码为B076,其中B0是操作吗(操作命令码),76是操作数。 直接寻址 直接寻址指令在其操作后面直接给出操作数的16位偏移地址。此偏移地址也称为有交地址EA,它与指令的操作码一起,存放在内存代码段,低8位在前,高8位在后。但是,操作数本身一般存放在内存的数据段。 寄存器寻址 操作数在寄存器中,所有指令,必须有一个操作数是寄存器。 寄存器间接寻址 四个寄存器可以间接寻址 SI、DI、BX和BP,但若选择其中不同的间址寄存器存器,涉及的段寄存器将有所不同。 变址寻址 变址寻址指令将规定的变址寄存器内容加上指令中给出的位移量,得到操作数的有效地址。8086/8088CPU中的变址寄存器有两个:源变址寄存器SI和目的变址寄存器DI。位移量可以是8位或16位二进制数,一般情况下,操作数在内存的数据段,但也允许段超越。以下是一条变址寻址指令例:MOV BX ,SI+1003。 基址寻址 基址与变址相类似,不同之处是指令中使用基址寄存器BX或基址指针寄存器BP,而不是变址寄存器SI和DI。注意,当使用BX寄存器实现基址时,通常,操作数在数据段,即段址在DS寄存器;而使用BP时,操作数通常在堆栈段,即段地址在SS寄存器中。 基址变址寻址(实际上还要加偏移量)此寻址方式是已经介绍的两种寻址方式的结合。指令中规定一个基址寄存器(BX和BP二者之一)和一个变址寄存器(SI和DI二者之一),同时还给出一个8位或16位的位移量,将三者内容相加即得到操作数的有效地址。对于段地址,通常由所用的基址寄存器决定。当使用BX存放基址时,段地址一般DS寄存器;当使用BX存放基址时,段地址一般在DS寄存器;当使用BP时,段地址一般在堆栈SS中,但当指令中标明是段超越时例外。以下是一条基址加变址寻址指令例:MOV AX,COUNTBXSI。有三种操作数:立即操作数、寄存器操作数、存储器操作数,后者最复杂。不允许源操作数和目标操作数两者同时都是寄存器操作数,即不允从存储器到存储器的操作。当有此种需要时,可以把某个通用寄存器作为二传手。也不允许把立即数做目的操作数,只能够做源操作数。例2-4判断下列指令的正误。如果正确,请说明源操作数、目的操作数的寻址方式。 MOV BX,1234H; MOV SI,AL; MOV DX,AL;DX不可以是寄存器间接寻址 MOV 1280H,AX; MOV CS,2345H; MOV CS,AX;答:上述指令的正误分别为: 不正确 正确,目的操作数是寄存器间接寻址,源操作数是寄存器寻址。 不正确。 不正确。 不正确。 不正确,CS由操作系统确定代码段寄存器,CS不能作指令的目的寄存器。例2-5判断INCBX是否正确,如不正确,如何改正?答:不正确。操作数是字节或是字不明确,计算机无法执行。改写成INC WORD PTRBX或INC BYTE PTRBX即为正确。前者是字操作,例如,原DS:BX对应的物理地址数是00FFH,加1后,高字节为01H,低字节为00H。后者是字节操作,此时高字节不变。例2-6 说明以下三条指令的功能。 LEA BX,MESS ; MOV BX,OFFSET MESS; MOV BX, MESS;答:功能为:BX的偏移地址,功能同。BX的偏移地址,功能同。BX字变量MESS中的内容。例2-7下列指令中隐含的操作数是什么? DAA DAS MOVSB STOS LODS CMPS SCAS答:DAA 、DAS隐含的操作数是AL。MOVSB是传送一个字节,隐含的操作数从数据段中SI所指示的地址内容传送到附加段DI所指示的地址中,然后根据方向标志DF,把SI,DI各加或减1。其它指令见教材61页“四、串操作指令”。四、练习题1键入下列程序段,说明算术运算对标志的影响(表2-5)。 MOV AL,OPD1:可在0FFH范围内任意设置 ADD AL,OPD2:可在0FFH范围内任意设置 INT 3 表2-5Oprd1Oprd2AL OFSFZFCF81H7FH00H001172H69HDBH110082H97H19H10010F0H0E0HD0H010133H44H77H00002.键入下列程序段,说明算术运算对标志的影响(表2-6)MOV AL,OPRD1ADD AL,OPRD2DAAINT 3Oprd1Oprd2AL (加后)AF(加后)CF(加后)CF(DAA加后)AL(DAA加后)37H22H59H00 059H98H99H31H11197H48H57H9FH001063.说明逻辑运算对标志的影响(表2-7)NOV AL,OPRD1AND AX,OPRD2INT 3 ;说明PF只与低8位1个数有关 表2-7Oprd1Oprd2AX(结果)PFCFZFSF5678H40F0H4070H0(PO)0009977H80F0H8070H0(PO)0017E89HDEF1H5E81H1(PE)0004其它指令练习。MOV AL 96H SUB AL,79H DAS INT 3答:AL=17HMOV AX,8100H NEG AX INT 3答:AX=7F00HMOV AL,B4H MOV BL,11H MUL BL INT 3 答:AX=0BF4H MOV AX,1234HMOV BL,0B4HDIV BLINT 3答:AL=19H,AH=A0H MOV AL,FFHMOV BL,FEHIMUL BLINT 3答:AX=0002(-1)=2 MOV AX,400HMOV BL,0B4HIDIV BLINT 3答:AX=24F3H;相当于1024余数36=24H,在AH中;MOV AX,400H; CWD MOV CX,4 IDIV CX;各个标志=? INT 3答:AX=0100H,DX=0;MOV AL,C1H CMP AL ,81HINT 3答:JA成立,作为无符号数,C1;标志,NZ,NC,NA,NV,PL;5试分析以下程序段完成什么功能?MOV CL,4SHL DX,CLSHL AX,CLSHR BL,CLINT 3答:程序段使DX6写出执行以下计算的指令序列: 答:;假定AX=W,BX=Z,X=CX,DX=Z MOV AX,W MOV CX,X MOV BX,Z SUB BX,cx ADD AX,BX MOV DX,AX INT 3 MOV AL,XADD AL 6MOV BL,WSUB BL,ALMOV AL,RADD AL,10SUB BL,ALMOV Z,BL ;Z是内存地址INT 3 ;假定W,X,R为内存地址单元MOV AL,WMOV BL,XMUL AL,BL ;乘积在AX中MOV CL,RADD CL 6DIV CLINT 3 MOV AX,WSUB AX,XMOV BL,5DIV BL ;商在ALMOV DL,YMUL DLSHL AX,1 ;乘2INT 37指令序列为:CMP AX,BXJ L1请说明能够引起转移到L1标号的条件转移指令下面画钩,AX,BX给定的值如下:AXBXJBJNBJBNJNBEJLJNLJLEJNLE1F53H1F53HFF82H007EH58BAH020EH09A0H1E97HD367H32A6HFFC5HFF8BH答:AXBXJBJNBJBNJNBEJLJNLJLEJNLE1F53H1F53HFF82H007EH58BAH020EH09A0H1E97HD367H32A6HFFC5HFF8BH8求两个数56H和67H进行ADD,并求出标志OF,CF,SF,ZF的值。答:和为BDH,OF=1,CF=0,SF=1,ZF=O。9利用助记符指令编写程序段:将十进制数0255转换成二进制数和程序,十进制数放在AX中,结果在DH中。程序段如下:算法2(百位)(十位)(个位)MOV AX,0255MOV DX,AX ;保存MOV AL,AH ;(百位)MOV BL,64HMUL BL ;乘100MOV DH,ALNOPMOV AL,DLMOV CL,4SHR AL,CL ;AL=十位MOV BL,0AHMUL BL ;乘10ADD,DH,ALAND DL,OFHADD DH,DL ;出口在DH中INT 310阅读程序段,回答下述问题:MOV AX,4000H mOV DS,AX MOV BX,1238H MOV BX,2244H MOV AL,BX INT 3AL=?存储器的物理地址=?答:AL=44H,存储器的物理地址=41238HMOV AX,5678HMOV BX,99AAHPUSH BX PUSH AXPOP DXPOP CXDX=?CX=?答:DX=5678H,CX=99AAHMOV AX,1234HMOV CX,9812HCMP AX,CXINT 3SF=?OF=?JA成立否?答:SF=1,OF=1,JA不成立。11下列程序能完成什么功能? DATY1 DB 300DUP(?) DATY2 DB 100DUP(?)MOV CX,100MOV BX,200MOV SI,0MOV DI,0NEXT:MOV AL,DATY1BXSI MOV DATY2DI,AL INC SI INC DI LOOP NEXT答:数据块从变量DATY1+200的单元,共100个单元的内容传送到DATY2开始的100个单元中,相当于DEBUG中M功能。12下列指令哪些是错误的?并简述之。MOV 15,BXCMP OP1,OP2(假定OP1,OP2是用DB定义的变量)CMP AX,OP1CMP OP1,25HMOV DS,CS答:错误,15不能作目的操作数。错误,两个存储器操作数不能比。错误,类型不匹配,AX应改为AL。错误,存储器操作数不能与立即数比较错误,段寄存器不能互相传送。13下列程序段执行后,BX的值是什么?MOV CL,3MOV BX,0B8HROL BX,1ROR BX,CL答:程序段执行后,BX的值是002EH。14用两条循环指令将DX:AX中的双字长数乘2。答:SAL,AX,1RCL DX,115要求测试一个字节变量STATUS 的最高位或最低位,如为1,转移到NEXT;否则,继续下一条指令。答:MOV AL,STATUSTEST AL,81HJZ NEXTNEET:16用其它指令完成下列指令同样的功能:REP MOVSB REP LODSB REP STOSB REP SCASB答:NEXT:MOV DL,SIMOV DI,DLINC SI (或DEC SI)INC DI (或DEC DI)LOOP NEXT NEXT:MOV AL,SIINC SILOOP NEXT NEXT:MOV DI,ALINC DILOOP NEXT NEXT:CMP AL,DI (也可以加:JE DOWORK) INC DI LOOP NEXT INT 3DOWORK:17MOV SP,8000HMOV A,5678HMOV BX,0ABCDHMOV SI,5566HPUSH AXPUSH BXPUSH SI;问此时SP=?堆栈的内容是什么?答:MOV SP,8000H ;SP=8000HMOV A,5678HMOV BX,0ABCDHMOV SI,5566HPUSH AX ;SP=7FFEH,(SS:7FFEH)=5678HPUSH BX ;SP=7FFCH,(SS:7FFCH)=0ABCDHPUSH SI; 这时SP=7FFAH,(SS:7FFAH)=5566H18MOV AX,1800H ADD AX,100HMOV SS,AXMOV BP,2000HMOV WORD PTRBP-2,1234HMOV WORD PTRBP-4,5678HMOV SP,BPSUB SP,4POP AXPOP BXINT 3问程序到此,AX,BX为多少?(SS:BP)指向的物理地址是多少?SP=?答: MOV AX,1800H ADD AX,100HMOV SS,AX ;SS=1900HMOV BP,2000HMOV WORD PTRBP-2,1234H ;1234存

温馨提示

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

评论

0/150

提交评论