微机实验二实验报告
微机实验报告
微机实验报告第⼀次实验1.写出完成下列功能的指令序列(1)传送20H到AL寄存器MOV AL , 20H(2)将(AL)*2 MOV AL , 02H MUL AL (3)传送25H到BL寄存器MOV BL , 25H (4)(AL)*BL MUL BL问最后结果(AX)=?AX=0940H2.分别写出完成下列指令要求的指令(1)将BX的低4位清零AND BX , F0H(2)将AX的⾼4位置1 OR AX , F0H(3)将DX的低4位取反;XOR DX , 0FH(4)将CX的中间⼋位清零AND CX , 0FF0H(5)将AX中与BX中的对应位不相同的位均置1 XOR AX , BX3.上机运⾏下⾯指令序列,分析运⾏后(AX)=?mov cl , 8sar ax ,cldec axmov cx ,8mul cxax=210.9h4. 4.设DS=当前段地址,BX=0300H,SI=0002H,请⽤DEBUG的命令将存储器偏移地址300-304H连续单元装⼊0AH0BH0CH0DH0EH。
在DEBUG状态下送⼊下⾯的程序,并⽤单步执⾏的⽅法,分析每条指令原源地址的形成过程?当数据传送完毕时,AX中的内容是什么?8.编程:求两个数的平均值。
这两个数分别放在X单元和Y单元中,⽽平均值放在Z单元中。
即Z=(X+Y)/2 data segmentx db 2y db 6z db ?data endscode segmentassume cs:code, ds;datastart:mov ax, datamov ds,axmov al, xmov ah,0add al,ymov bl,2div blint 21hcode endsend start9.输⼊下⾯源程序,并对程序进⾏会变,连接,调式并说明程序的功能。
data segment number dw 0168hdata endscode segmentassume cs;code, ds: dataorg 0100hstart:mov ax, datamov ds, axmov dx,0mov bx, 0001hmov di, 8000hmov si, 0mov ax, numbermov cx, 16next;test ax, bxjz continueor dx, diinc sicontinue:ror di, 1mov ah,4chint 21hcode endsend start1.编写程序: 求1+2+3+…..+100的和data segment number db 01hdata endscode segmentassume cs:code , ds:datastart:mov ax , datamov ds , axmov ax , datamov bx , numbermov ax , 0mov cx , 64hnext:add ax ,bxinc bxloop nextmov ah , 4chint 21hcode endsend start2.在内存中tab为⾸的地⽅存有1-9的平⽅值,从键盘输⼊⼀个数(1-9),将该数存⼊X单元,⽴⽅值存⼊XXX单元中data segmenttab db 0,1,4,9,16,25,36,49,64,81x db 10dup(?)xxx db 10dup(?)data endscode segmentassume cs:code ,ds: datastart:mov ax ,datamov ds , ax mov ax , datamov cx ,09hnext:mov ah , 1int 21hand ah ,0fhmov bx ,ahmov si , offset tabmov sp , offset xmov di , offset xxxmov dx , byte ptr[bx+si]mov al, blmul dxmov [bx+di] ,axmov [sp+bx] , bxmov ah , 4chint 21hcode endsend start第⼆次实验顺序程序设计从键盘输⼊两个1位⼗进制数,求这两个数的和,并将结果显⽰在屏幕上data segment infor1 db 'please input the first data (<10):$'infor2 db 0ah,0dh,'please input the second data (<10):$'infor3 db 0ah,0dh,'the result is:$'data endscode segmentassume cs:code,ds:datastart:mov ax,datamov ds,axmov dx,offset infor1mov ah,9int 21hmov ah,1int 21hand al,0fhmov ah,00000000000000000000mov bl,almov dx,offset infor2int 21hmov ah,1int 21hand ax,000fhadd al,blaaaor ax,3030hpush axmov dx,offset infor3 mov ah,9int 21hpop axmov dl,ahpush axmov ah,2int 21hpop axmov dl,almov ah,2int 21hmov ah,4chint 21hcode endsend startresult db 0ah,0dh,'cube result is :$' data endscode segmentassume cs:code,ds:datastart:mov ax,datamov ds,axmov dx,offset numbermov ah,9int 21hmov ah,1int 21hand ax,000fhmov bx,axmul blmul blmov cl,64hdiv clor al,30hpush axmov dx,offset resultmov ah,9int 21hpop axmov dl,alpush axmov ah,2int 21hpop axmov cl,0ahmov al,ahmov ah,0div clor ax,3030hpush axmov ah,2int 21hpop axmov dl,ahmov ah,2int 21hmov ah,4chint 21hcode endsend start分⽀程序设计1.某程序可从键盘接收命令(0-5),分别专项6个⼦程序,⼦程序⼊⼝地址分别为p0-p5,编制程序,⽤跳转表实现分⽀结构程序设计,记录实验结果data segmentmessage db 'please input key (0-5):$'crmessage db 0ah,0dh,'$'errormessage db 'you hit error key !',0ah,0dhdb 'please try again(0-5):$'message0 db 'you hit the key 0',0ah,0dh,'$'message1 db 'you hit the key 1',0ah,0dh,'$'message2 db 'you hit the key 2',0ah,0dh,'$'message3 db 'you hit the key 3',0ah,0dh,'$'message4 db 'you hit the key 4',0ah,0dh,'$'message5 db 'you hit the key 5',0ah,0dh,'$'code segmentassume cs:code,ds:data start:mov ax,datamov ds,axmov ah,9lea dx,messageint 21htryagain:mov ah,1int 21hmov bl,almov ah,9mov dx,offset crmessage int 21hcmp bl,'0'jz key0cmp bl,'1'jz key1cmp bl,'2'jz key2cmp bl,'3'jz key3cmp bl,'4'jz key4cmp bl,'5'jz key5error:mov ah,9mov dx,offset errormessage int 21hjmp tryagainkey0:lea dx,message0mov ah,9int 21hjmp exitkey1:lea dx,message1 mov ah,9int 21hjmp exitkey2:lea dx,message2 mov ah,9int 21hjmp exitkey3:lea dx,message3 mov ah,9int 21hjmp exitkey4:lea dx,message4 mov ah,9int 21hjmp exitkey5:lea dx,message5 mov ah,9int 21hexit:mov ah,4chint 21hcode endsend start第三次实验循环程序设计1.从⾃然数1开始累加,直到累加和⼤于1000为⽌,统计被累加的⾃然数的个数,并把统计的个数送⼊N单元,把累加和送⼊SUM单元。
微机原理及应用实验报告
3•掌握各种寻址方法以及简单指令的执行过程。
二、实验要求
1实验前要作好充分准备,包括汇编程序清单、调试步骤、调试方法以及对程序结果的分 析等。
2•本实验要求在PC机上进行。
3•本实验只要求在DEBUC调试状态下进行,包括汇编程序,调试程序,执行程序。
4•熟悉建立源文件,进行汇编和连接的全过程,并对程序进行调试。
二、实验要求
1•实验前准备
1分析题目,将程序中的原始数据、中间结果和最终结果的存取方式确定好。
2写出算法或画出流程图。
3写出源程序。
4对程序中的结果进行分析,并准备好上机调试的过程。
2•本实验要求在PC机上进行。
3•汇编过程中出现问题,可用DEBU(进行调试。
xorax,ax pushax movax,data movds,ax leasi,data1 leadi,data2 leabx,data3 moval,[si+3] movah,[di+3] an dal,0fh an dah,0fh addal,ah oral,30h mov[bx+3],al moval,[si+2] movah,[di+2] an dal,0fh an dah,0fh adcal,ah oral,30h mov[bx+2],al moval,[si+1] movah,[di+1] an dal,0fh an dah,0fh adcal,ah oral,30h mov[bx+1],al moval,[si] movah,[di] an dal,0fh an dah,0fh adcal,ah
;exercize21
微机原理实验报告2
广东工业大学实验报告信息工程学院通信工程专业班成绩评定_______ 学号姓名(合作者_ _号____) 教师签名实验3题目显示程序设计实验第9 周星期二第5-8节显示程序实验设计1一.实验目的1,学习显示器I/O程序设计方法;2,了解系统功能中断的设计方法;3,了解键盘光标键是如何公职;二.实验内容和要求1,用键盘上的上下左右键控制光标的移动.2,按行号*列号的形式给方块字符(ACS2码为0BDH)在屏幕上定位,按上下左右光标键使光标在屏幕上移动,光标的移动由方块字符组成的图形而在屏幕上保留下轨迹.三.实验主要仪器设备和材料计算机四.实验方法,步骤及结构测试1,源程序如下:TITLE DRA W---Program to draw on screen withread_c equ 0key_rom equ 16hup equ 48hdown equ 50hright equ 4dhlift equ 4bhblock equ 0dbhesc1 equ 1bhvideo segment at 0b800h ;define extra segwd_buff label wordv_buff db 25*80*2 dup(?)video endspro_nam segment ;define code segmentMain proc farAssume cs:pro_nam,es:videoStart:push ds ;set up stack for returnsub ax,axpush axmov ax,videomov es,axmov cx,80*25 ;clear screen by writing zeros to it mov bx,0Clear:mov es:[wd_buff+bx],0700hinc bxinc bxLoop clearmov ch,12d ;set screen pointer to center of screenmov cl,40dGet_char:mov ah,read_cint key_romcmp al,esc1jz exitmov al,ahcmp al,upjnz not_updec chNot_up:cmp al,downjnz not_downinc chNot_down:cmp al,rightjnz not_rightinc clNot_right:cmp al,liftjnz lite_itdec clLite_it:mov al,160dmul chmov bl,clrol bl,1mov bh,0add bx,axmov al,blockmov es:[v_buff+bx],aljmp get_charExit:retMain endpPro_nam endsEnd start五,实验报告要求1,显示器是如何定义窗口的大小的?显示器根据数据显示的单元数,v_buff d b 25*80*2 dup(?)定义窗口大小的.2,在文本方式下,什么是属性值?block equ 0dbh是定义的属性值,v_buff+bx+1,是放每个单元(一共25*80个)属性值的地方,即每个单元的高字节。
微机原理8259A实验报告
实验二8259A中断控制器应用实验分析报告一、填写补充实验1-2中以下两段代码,并简述其意义:第1段:IN AL,21H_ AND AL, 0F7H _____________OUT 21H,ALIN AL,0A1H__AND AL, 0FBH______________OUT 0A1H,AL第2段:MOV AL,20HOUT 0A0H,ALOUT 20H,AL二、简述实验1-2的实验现象,分析解释其原因;结合本实验,简述中断嵌套和中断优先级的意义以及正确形成中断嵌套的基本要求。
答:实验1现象:按下一次单脉冲,显示一次字符,十次中断后停机,不再显示字符串实验2现象:分别按下两个单脉冲显示一串3和一串10,在3未显示完全时按下显示10的脉冲键,可发生中断,相反则不能发生中断,需等待一串10显示完后再显示一行3。
原因:IRQ10的中断级别高于IRQ3,所以可以在3还没有执行完时中断IRQ3,中断原程序执行IRQ10 。
中断嵌套的意义:为了让CPU及时响应更高级别的中断请求。
中断优先级的意义: CPU只能响应一个中断请求,在中断源较多的情况下,当有多个中断源同时发起中断请求时,CPU需要对多个中断源的优先级进行判断,判断出优先级最高的中断请求进行响应。
中断嵌套要求是:被中断程序的优先级低于请求程序中断的优先级。
三、抄写实验1-2中要求填写的“显示‘10’和‘空格’”的代码段NEXT10_1:MOV AX,SEG MESS10MOV DS,AXMOV DX,OFFSET MESS10MOV AH,09INT 21H ;使用INT21 – 09H实现字符串的输出‘10’CALL DELAY1 ;调用延时子程序LOOP NEXT10_1MOV DX,0DH ;调用DOS的中断功能,回车MOV AH,02HINT 21HMOV DX,0AH ;调用DOS的中断功能,换行MOV AH,02HINT 21H四、用文字简述或流程图方式,说明实验1-3中“以查询方式检测处理多中断请求”的过程。
微机原理与接口技术-拆字程序
《微机原理与接口技术》课程实验报告
一、实验目的和要求
实验目的:掌握汇编语言设计和调试方式。
实验要求:通过本实验,掌握8051汇编程序设计以及仿真实验的流程及方法。
二、实验环境
DVCC单片机仿真实验系统独立工作以及连PC机。
三、实验内容及实施
【实验内容】把7000H的内容拆开,高位送7001H低位,低位送7002H低位。
7001H、7002H高位清零,一般本程序用于把数据送显示缓冲区使用。
【源程序】
【实验步骤】
(1)先用存储器读写方法将7000H单元置成34H。
(2)用单步、断点或连续执行程序的方法从起始地址0050H开始运行程序(输人0050H后按STEP为单步,按EXEC为连续)。
(3)按MON键或RESET键退出。
(4)检查7001H和7002H单元中的内容应为03H和04H
四、实验结果
五、实验讨论
用断点方式调试本程序的方法:把光标指向语句左边,然后单击,会出现一个符号。
同样的方法对需要在结束语句左边做同样的事情,然后全速运行,按下停止按钮,程序就会在相应的位置停止。
通过本次实验,对单片机的RAM和ROM的使用有了更加透彻的理解,熟悉了仿真实验系统的键盘操作以及基本仿真软件的使用,并且逐步掌握汇编语言设计和调试方式。
微机原理与接口技术实验报告_5
实验二初级程序的编写与调试实验一、实验目的1、熟练掌握DEBUG的常用命令,学会用DEBUG调试程序.2、深入了解数据在存储器中的存取方法,及堆栈中数据的压入与弹出.3、掌握各种寻址方法以及简单指令的执行过程.二、实验内容1.设堆栈指针SP=2000H,AX=3000H,BX=5000H,请编一程序段将AX的内容和BX的内容进行交换.请用堆栈作为两寄存器交换内容的中间存储单元,用DEBUG调试程序进行汇编与调试.程序:MOV AX,3000MOV BX,5000MOV SP,2000PUSH AXPUSH BXPOP AXPOP BXHLT2.设DS=当前段地址,BX=0300H,SI=0002H请用DEBUG的命令将存储器偏移地址300H~304H连续单元顺序装入OAH,OBH,OCH,ODH,OEH.在DEBUG状态下送入下面程序,并用单步执行的方法,分析每条指令源地址的形成过程?当数据传送完毕时,AX中的内容是什么?-E 300 0A,0B,0C,0D,0E-AMOV BX,0300MOV SI,0002MOV AX,BXMOV AX,0304MOV AX,[0304]MOV AX,[BX]MOV AX,0001[BX]MOV AX,[BX][SI]MOV AX,0001[BX][SI] HLT3.设AX=0002H,编一个程序段将AX的内容乘10,要求用移位的方法完成. 程序:MOV AX,0002MOV BX,AXMOV CL,2SHL AX,CLADD AX,BXMOV CL,1SHL AX,CLHLT实验四加法及判断程序的编写与调试一、实验目的1.熟练掌握编写汇编语言源程序的基本方法和基本框架.2.学会编写顺序结构,分支结构和循环结构的汇编程序3.掌握程序中数据的产生与输入输出的方法.二、实验内容1.用汇编语言编写一个加法程序:1325+9839请用ASCII码的形式将加数与被加数存放在数据区DATA1和DATA2中,并将相加结果显示输出.程序:DATA SEGMENTDATA1 DB '5','2','3','1'DATA2 DB '9','3','8','9'DATA ENDSSTACK SEGMENT PARA STACK 'STACK'DB 200 DUP(?)STACK ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,SS:STACKSTART: MOV AX,DATAMOV DS,AXMOV AX,STACKMOV SS,AXLEA SI,DATA1LEA DI,DATA2MOV CX,4MOV AH,0 NEXT:MOV AL,[SI]ADC AL,[DI]ADC AL,AHMOV AH,0AAAADD AL,30HMOV [DI],ALINC DIINC SILOOP NEXTMOV CX,5ADD AH,30HMOV [DI],AH NEXT1:MOV DL,[DI]MOV AH,02INT 21HDEC DILOOP NEXT1MOV AH,4CHINT 21H CODE ENDSEND START2.假设有一组数据:5,-4,0,3,100,-51,请编写一程序,判断:每个数是否大于0?等于0?还是小于0?并输出其判断结果,即即:1当X>0Y=0当X=0-1 当X<0程序:DATA SEGMENTDATA1 DB 5, -4, 0 ,3,100,-51STRING1 DB'Y=1','$'STRING2 DB'Y=0','$'STRING3 DB'Y=-1','$'DATA ENDSSTACK SEGMENT PARA STACK 'STACK'DB 200 DUP(?)STACK ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,SS:STACKSTART: MOV AX,DATAMOV DS,AXMOV AX,STACKMOV SS,AXLEA SI,DATA1MOV CX,6NEXT: MOV AL,[SI]CMP AL,0JZ NEXT1JNS NEXT2JS NEXT3NEXT1: MOV DX,OFFSET STRING2MOV AH,09HINT 21HJMP NEXT4NEXT2: MOV DX,OFFSET STRING1MOV AH,09HINT 21HJMP NEXT4NEXT3: MOV DX,OFFSET STRING3MOV AH,09HINT 21HNEXT4: INC SILOOP NEXTMOV AH,4CHINT 21HCODE ENDSEND START实验五大小写字母互换程序的编写与调试一、实验目的进一步熟悉汇编语言源程序的编写方法及宏汇编程序的使用方法二、实验内容设内存数据区有大小写混合英文ASCII码字母: ‘AbCdEfGChinaAgriculturalUniversity’。
微机原理实验报告(两个32位无符号数乘法程序以及码制转换程序设计)
微机原理实验报告(两个32位无符号数乘法程序以及码制转换程序设计)----05f17e0a-6eb2-11ec-86e4-7cb59b590d7d微机原理实验报告姓名:班级:学号:时间:实验名称:基本汇编语言程序设计实验1:两个32位无符号数乘法程序实验2:代码系统转换程序设计<1>十六进制到ascii<2>从二进制到ascii一、程序流程图1、两个32位无符号数乘法程序:2.十六进制到ASCII二、程序的实现:1、实验一程序:名称32位多数据段mulnumdw0000,0ffffh,0000,0ffffh,4dup(?)dataendsstack'stack'db100dup(?)斯塔克恩兹codesegment假设:代码,ds:data,ss:stack,es:datastartprocfarbegin:pushdsmovax,0pushaxmovax,datamovds,axmoves,axleabx,mulnummulu32:movax,[bx]movsi,[bx+4]movdi,[bx+6]乳化液mov[bx+8],axmov[bx+0ah],dxmovax,[bx+2]mulsiaddax,[bx+0ah]adcdx,0mov[bx+0ah],axmov[bx+0ch],dxmovax,[bx]muldiaddax、[bx+0ah]adcdx、[bx+0ch]mov[bx+0ah]、axmov[bx+0ch]、DXFmovax,[bx+2]muldipopfadcax,[bx+2]adcdx,0mov[bx+0ch],axmov[bx+0eh],dxretSTARTENDPCODENDSENDSTART2、实验二的程序:1)名称HEX_uu更改为uuidatasegmentl1dw2stringdb34h,98hl2dw?缓冲区db2*2dup(?)数据端stacksegmentparastack'stack'db100dup(?)stackends代码段assumecs:code,ds:data,es:data,ss:stackstartprocfarbegin:pushdsmovax,0pushaxmovax,datamovds,axmoves,axmovcx,l1leabx,stringleasi,buffermovl2,cxmovcx,ax再次:moval,[bx]movdl,alandal,0fhcallchangemoval,dlpushcxmovcl,4shral,clpopcxcallchangeincbxretstartendpchangeproccmpal,10jladd_0addal,'a'-'0'-10add_0:addal,'0'mov[si],alincsiretchangeendpcodeendsendstart2)namebinary_to_acsiidatasegmentnumdw4f78hstringdb16dup(?)dataendsstack'stack'db100dup(?)斯塔克恩兹codesegment假设:代码,ds:data,ss:stack,es:datastartprocfarbegin:pushdsmovax,0pushaxmovax、数据MOVDS、axmoves、axleadi、字符串movcx,lengthstringpushdipushcxmoval,30h;repstowpopcxpopdimoval,31hmovbx,numagain:rclbx,1jncnextmov[di],alnext:incdiloopagainretstartendpcodeendsendstart三、实验感想:在实验过程中,我根据书慢慢理解了这些代码的含义,并纠正了代码中的错误。
电力系统继电保护实验二(微机电流保护)
实验二 输电线路的电流微机保护实验(微机电流速断保护灵敏度检查实验)一、 实验目的1. 学习电力系统中微机型电流保护整定值的调整方法。
二、 2. 研究电力系统中运行方式变化对保护的影响。
三、 3. 了解电磁式保护与微机型保护的区别。
四、 接线方式及微机保护相关事项试验台一次系统原理图如图1所示。
实验原理接线图如图2所示。
A相负载B相负载C相负载图2实验原理接线图PT 测量 A.B 相接交流电压表, 以显示发电厂电压;做A.B 两相短路时, 电流表要接到A 相或B 相;微机的显示画面: 画面切换——用于选择微机的显示画面。
微机的显示画面由正常运行画面、故障显示画面、整定值浏览和整定值修改画面组成, 每按压一次“画面切换”按键, 装图1 电流保护实验一次系统图置显示画面就切换到下一种画面的开始页, 画面切换是循环进行的。
信号复位——用于装置保护动作之后对出口继电器和信号指示灯进行复位操作。
主机复位——用于对装置主板CPU进行复位操作。
微机保护装置故障显示项目DJZ-III试验台微机保护装置电流电压保护软件流程图如图3所示。
五、实验内容与步骤实验内容: 微机电流速断保护灵敏度检查实验。
实验要求:在不同的系统运行方式下, 调整滑动变阻器阻值的大小(阻值为滑动变阻器刻度除以10), 做AB相, BC相和CA相短路实验, 记录对应的短路电流和保护是否动作。
如果保护不动作, 记录微机显示屏上“Ia”, “Ib”, “Ic”中的最大值;如果保护动作, 记录微机显示屏上“sd”的值。
四、实验过程及步骤(1)DJZ-III试验台的常规继电器和微机保护装置都没有接入电流互感器TA回路, 在实验之前应该接好线才能进行试验, 实验用一次系统图参阅图1, 实验原理接线图如图2所示。
按原理图完成接线, 同时将变压器原方CT的二次侧短接。
(2)将模拟线路电阻滑动头移动到0Ω处。
(3)运行方式选择, 置为“最小”处。
(4)合上三相电源开关, 直流电源开关, 变压器两侧的模拟断路器1KM、2KM, 调节调压器输出, 使台上电压表指示从0V慢慢升到100V为止, 注意此时的电压应为变压器二次侧电压, 其值为100V(PT测量A, B相接交流电压表)。
微机原理实验报告
微机原理实验报告实验⼀DEBUG 调试实验类型:实验课时:指导教师:时间:2013 年⽉⽇课次:第节教学周次:第周实验分室:实验台号:实验员:⼀、实验⽬的1.练习使⽤DEBUG,调试简单汇编程序。
⼆、实验要求1.掌握DEBUG的使⽤,调试程序。
2.读懂程序中各条指令,说明程序功能。
三、实验内容1.启动DEBUG,⽤A命令输⼊并汇编下列程序段。
100 MOV SI,200103 MOV CX,10106 MOV AL,0108 MOV [SI ],AL10A INC SI10B INC AL10D DEC CX10E JNZ 108110 INT 3四、实验结果及分析实验⼆简单汇编语⾔设计实验类型:实验课时:指导教师:时间: 2012 年⽉⽇课次:第节教学周次:第周实验分室:实验台号:实验员:⼀、实验⽬的1.巩固DEBUG及宏汇编的使⽤。
2.加深对指令的理解。
⼆、实验要求1.设堆栈指针SP=2000H,(AX)=3000H,(BX)=5000H。
请编⼀程序将AX的内容和BX的内容进⾏交换。
请⽤堆栈作为两寄存器交换内容的中间存储单元,⽤DEBUG调试程序进⾏汇编与调试。
2.设DS=当前段指地址,(BX)=0300H,(SI)=0002H,请⽤DEBUG的命令将存储器偏移地址300H~304H连续单元顺序装⼊0AH、0BH、0CH、0DH、0EH。
在DEBUG状态下送⼊下⾯程序,并⽤单步执⾏的⽅法,分析每条指令源地址的形成过程?当数据传送完毕时,AX中的内容是什么?程序清单如下:MOV AX,BXMOV AX,0304HMOV AX,[0304H]MOV AX,[BX]MOV AX,0001[BX]MOV AX,[BX][SI]MOV AX,0001[BX][SI]HLT3.设(AX)=0002H,编⼀个程序段将AX的内容乘10,要求⽤移位的⽅法完成。
三、思想描述实验内容1将两个寄存器的内容进⾏交换时,必须有⼀个中间寄存器才能进⾏内容的交换,如果⽤堆栈做为中间存储单元,必须遵循先进后出的原则。
微机系统实验报告
LENS EQU $-BUF
MESG DB 'THE RECEIVED CHARACTERS:','$'
DATA ENDS
CODE SEGMENT USE16
ASSUME CS:CODE,DS:DATA
BEG:
MOV AX,DATA
MOV DS,AX
CALL I8250
实验报告
(2016--2017学年第1学期)
课程名称
微型计算机原理与接口技术
实验名称(1)排除语法错误(2)测试微机系统串行口
实验时间
2016
年
12
月
11
日
指导单位
南京邮电大学
指导教师
李爱群
学生姓名鞠黄杰班级学号B14020230
学院电子科学与工程专业电子科学与技术
实验报告(一)
实验名称
排除语法错误
END BEG
四、实验小结(包括问题和解决方法、心得体会、意见与建议等)
通过这次实验我对串行通信的基本知识,8251、8255的结构更加的了解了也加深对串行接口的控制端口、数据端口工作方式的理解。
五、指导教师评语
成绩
批阅人
李爱群
日期
MOV BX,OFFSET NUM
MOV CH,0
MOV CL,9
AGAIN: CMP BYTE PTR [BX] ,0
JG NEXT1
INC AB
CMP BYTE PTR [BX], CH
JG NEXT1
MOV CH,BYTE PTR [BX]
NEXT1: INC BYTE PTR BX
微机保护 功能实验报告
微机保护功能实验报告引言随着计算机应用的普及和发展,我们越来越依赖于计算机进行工作和生活。
然而,计算机作为一种电子设备,也存在各种潜在的风险,如病毒和黑客攻击等。
为了保护计算机的安全和正常运行,我们进行了一系列微机保护功能的实验。
本报告旨在总结和分享这些实验的过程和结果。
实验目的1. 了解计算机系统的基本架构和工作原理;2. 学习常见的微机保护功能并掌握其原理和使用方法;3. 分析和评估各类微机保护功能的效果和局限性。
实验内容实验一:防病毒程序的安装和使用1. 了解病毒的分类和感染方式;2. 下载并安装主流的防病毒软件;3. 进行病毒扫描并清除感染的文件。
实验二:防火墙的配置和使用1. 了解防火墙的原理和分类;2. 配置操作系统内置的防火墙或使用第三方防火墙软件;3. 模拟攻击并测试防火墙的效果。
实验三:网络安全认证1. 学习网络安全认证的概念和原理;2. 配置和使用无线网络的加密认证功能;3. 进行无线网络攻击和抵抗的测试。
实验四:数据备份与恢复1. 了解数据备份和恢复的方法和工具;2. 配置自动或手动定期备份重要数据;3. 模拟数据丢失并进行恢复操作。
实验五:密码管理与安全使用习惯1. 学习创建强密码的原则和方法;2. 应用密码管理工具进行账户和密码的管理;3. 养成良好的密码安全使用习惯。
实验结果通过以上实验,我们获得了以下结果和收获:1. 防病毒程序的安装和使用可以有效提升计算机的安全性,及时清除病毒并保护系统;2. 配置和使用防火墙可以阻止外部攻击并控制程序的网络访问权限;3. 网络安全认证可以保护无线网络的安全,防止未经授权的设备接入;4. 数据备份与恢复是防止数据丢失的重要手段,及时备份可以最大程度减少数据损失;5. 密码管理和安全使用习惯是保护个人账户安全的基础,创建强密码和定期更换密码是必要的。
实验总结通过完成以上实验,我们深入了解了计算机保护功能的原理和使用方法。
同时,我们也发现了一些局限性,如病毒无法完全杜绝、防火墙可能导致误拦截、密码管理仍然面临被猜测等。
微机原理实验二 8255A并行接口应用
实验二8255A并行接口应用一、实验目的1.掌握8255A的功能及方式0、1的实现2.熟悉8255A与CPU的接口,以及传输数据的工作原理及编程方法。
3.了解七段数码管显示数字的原理。
4.掌握同时显示多位数字的技术。
二、8255应用小结1.8255的工作方式一片8255内部有3个端口,A口可以工作在方式0、方式1或方式2,B口可以工作在方式0、方式1,C口可以工作在方式0。
方式0是基本型输入/输出。
这种方式和外设交换数据时,8255端口与外设之间不使用联络线。
方式1为选通型输入/输出。
用这种方式和外界交换数据时,端口和外设之间要有联络信号。
方式2是双向数据传送,仅A口有这项功能。
当A口工作在方式2时,B口仍可以工作在方式0或方式1,但此时B口方式1只能用查询方式与CPU交换信息。
2. 工作方式选择字8255工作方式选择字共8位(如图),存放在8255控制寄存器中。
最高位D7为标志位,D7=1表示控制寄存器中存放的是工作方式选择字,D7=0表示控制寄存器中存放的是C口置位/复位控制字。
3.C口置/复位控制字8255的C口可进行位操作,即:可对8255C口的每一位进行置位或清零操作,该操作是通过设置C口置/复位字实现的(图8-10)。
C口置/复位字共8位,各位含义如下:3.8255A的控制信号与传输动作的对应关系4.命令字与初始化编程8255有两个命令字,即方式选择控制字和C口置0/置1控制字,初始化编程的步骤是:①向8255控制寄存器写入“方式选择控制字”,从而预置端口的工作方式。
②当端口预置为方式1或方式2时,再向控制寄存器写入“C口置0/置1控制字”。
这一操作的主要目的是使相应端口的中断允许触发器置0,从而禁止中断,或者使相应端口的中断允许触发器置1,从而允许端口提出中断请求。
注意:“C口置0/置1控制字”虽然是对C口进行操作,但是该控制字是命令字,所以要写入控制寄存器,而不是写入C口控制寄存器。
微机控制实验报告
实验一采样与保持仿真实验一、实验目的与要求1、了解数/模转换器的零阶保持器作用。
2、验证零阶保持器在控制系统中的作用。
3、验证采样周期对系统稳定性的影响。
4、学习控制系统计算机辅助设计软件MATLAB及其仿真环境SIMULINK的使用。
二、仿真软硬件环境PC机,MATLAB R2009。
三、实验原理其中零阶保持器描述回路的采样功能和D/A转换器的保持功能。
四、SIMULINK仿真结构图+ R五、仿真实验记录六、思考题1、在微机控制系统中采样周期T的选择应注意哪些方面?答:采样周期取越小值,复现精度就越高,也就是说“越真”。
若采样周期太长。
计算机控制系统受到的干扰就得不到及时克服而带来很大误差,使系统动态品质恶化,甚至导致计算机控制系统的不稳定。
2、若模拟量在A/D转换时变化较大,是否要加保持器?为什么?答:从启动信号转换到转换结束的数字输出,经过一定时间,而模拟量转换期间,要求模拟量信号保持不变,所以必须用采样保持器.该电路具有两个功能:采样跟踪输入信号;保持暂停跟踪输入信号,保持已采集的输入信号,确保在A/D转换期间保持输入信号不变。
在A/D转换期间,为了使输入信号不变,保持在开始转换时的值,通常要采用一个采样保持电路。
对于MCS-96单片机的A/D转换器,启动转换实际上是把采样开关接通,进行采样,过一段时间后,开关断开,采样电路进入保持模式,才是A/D真正开始转换。
3、D/A转换器为什么会具有零阶保持器的作用?答:在这种结构中每一个通道都有一个D/A转换器。
D/A转换器是按照采样周期T对控制器输出的数字量进行D/A转换的,但由于D/A转换器具有数据输入锁存功能,它能够在接收下一组数字量之前,一直保持前一组数字量不变,因而D/A转换器的输出模拟量,能够在一个采样周期保持不变,也就是说,D/A转换器本身就具有零阶保持器的功能。
4、计算机控制系统模拟量输出通道中若无零阶保持器会出现什么问题?答:模拟量输出通道中要有输出保持器,这是因为计算机控制是分时的,每个输出回路只能周期地在一个时间片上得到输出信号,即这时执行部件得到的是时间上离散的模拟信号,而实际的执行部件却要求连续的模拟信号,因此为了使执行部件在两个输出信号的间隔时间仍然能得到输出信号,就必须有输出保持器,通过它将前一采样控制时刻的输出信号保持下来,直到下一个采样控制时刻到来,重新得到新的输出信号计算机控制系统常采用零阶保持器,即前一采样时刻的输出值原封不动的(理想化的)保持到下一采样时刻到来。
uestc微机原理实验报告2
ldrr3,[r2]
orrr3,r3,#0x01e0
bicr3,r3,#0x01E0;按位清零
strr3,[r2] ;GPG8(即LED8) output0
ldrr0,=0xffffff;初始计数值
bldelay
;-------------实现LED5-LED8全部熄灭并调用延时-------------------
(二)LED C语言实验(选做)
八、实验数据及结果分析
ARM汇编控制LED实验:要求是实现一个流水灯,四个灯第一次点亮一个,第二次两个,第三次三个,第四次四个,然后全部熄灭。要实现这个程序,应该是在按位清零的时候对流水灯响应的位置清零就可以。
;GPIO寄存器宏定义
GPGCON EQU 0x56000060
4、在ledtest.s文件中添加汇编代码,点亮LED7,熄灭LED5,LED6,LED8,并调用延时。
5、在ledtest.s文件中添加汇编代码,点亮LED8,熄灭LED5,LED6,LED7,并调用延时。
6、在ledtest.s文件中添加汇编代码,实现LED5-LED8依次点亮。
7.连接好JTAG仿真板,一口与PC的并口相连,另一口与开发板的JTAG口相连,打开开发板电源。打开H-jtag程序,检测CPU,点击RVDS中的“Debug”,打开RVD进行硬件调试
;----------点亮LED5,LED6,LED7,熄灭LED8,并调用延时----
ldrr3,[r2]
orrr3,r3,#0x01e0
bicr3,r3,#0x00E0;按位清零
strr3,[r2];GPG7(即LED7) output0
微机原理实验报告
微机原理实验报告实验目的,通过本次实验,掌握微机原理的基本知识,了解微机系统的组成和工作原理,掌握微机系统的组装和调试方法。
实验一,微机系统组成及工作原理。
1.1 微机系统的组成。
微机系统由中央处理器(CPU)、内存、输入设备、输出设备和外部设备等组成。
其中,CPU是微机系统的核心部件,负责控制整个系统的运行。
1.2 微机系统的工作原理。
微机系统的工作原理是通过CPU对内存中的指令进行解释和执行,从而实现各种功能。
CPU通过总线与内存、输入输出设备进行数据传输和控制信号的交换,实现对整个系统的控制和管理。
实验二,微机系统的组装和调试。
2.1 微机系统的组装。
在组装微机系统时,首先要选择合适的主板、CPU、内存、硬盘等配件,然后按照正确的安装顺序和方法进行组装。
组装完成后,还需连接电源、显示器、键盘、鼠标等外部设备。
2.2 微机系统的调试。
组装完成后,需要对微机系统进行调试,检查各个部件是否连接正确,是否能够正常工作。
通过BIOS设置和操作系统的安装,完成对微机系统的调试和配置。
实验三,微机系统的应用。
3.1 微机系统的应用领域。
微机系统广泛应用于各个领域,如办公、教育、科研、娱乐等。
在办公领域,微机系统可以用于文字处理、表格制作、图像处理等;在教育领域,微机系统可以用于多媒体教学、网络教学等。
3.2 微机系统的发展趋势。
随着科技的不断发展,微机系统也在不断更新换代,性能不断提升,体积不断缩小,功耗不断降低。
未来,微机系统将更加智能化、便携化,成为人们生活、工作不可或缺的一部分。
结论,通过本次实验,我对微机原理有了更深入的了解,掌握了微机系统的组成和工作原理,了解了微机系统的组装和调试方法,对微机系统的应用和发展趋势也有了一定的认识。
这对我今后的学习和工作将有很大的帮助。
华工微机原理实验二数码转码编程及程序调试实验报告
实验二 数码转码编程及程序调试一、实验目的1.掌握不同进程数及编码相互转换的程序设计方法,加深对数码转换的理解;2.进一步熟悉键盘使用方法;3.进一步熟悉调试程序的方法。
二、实验设备装有汇编软件的IBMPC 机一台 三、实验内容及步骤计算机输入设备输入的信息一般ASCii 码或BCD 码表示的数据或字符,CPU 处理信息一般均用二进制数进行计算或其它处理,处理结果输出的外设一般要求变为ASCII 码,BCD 码或七段显示码等。
因此,在应用软件中各累数制的转换和代码的转换是必不可少的。
将ASCII 码表示的十进制数转换为二进制数,十进制数可表示为: l nl l n n nn D D D D 10*10* (10)*10*60011∑=--=+++L D 代表十进制1,2,3,···9,0;((...(10*0=∑=l nl lD012110*)...10*)10*)10*D D D D D n n l n +++++--由式(2)可归纳十进制数转换为二进制数的方法:从十进制的最高位Dn 开始作乘10加次位的操作,将结果再乘10再加下一个次位,如此重复,则可求出二进制的数结果来。
这里我们规定:被转换的五位ASCII 码十进制数存放在3500h ~3504h 单位中。
而转换结果在3800~3801单位中。
实验步骤(1) 绘制流程图;(2)输入程序并检查无误,编译链接通过。
程序代码:DATA SEGMENTORG 33FEHBUF DB 50 ;缓冲区长度DB ? ;预留用来存放实际长度DB 50 DUP(?) ;接收来自键盘的输入下信息MESG DB 'please input the BCD number you want to tranfer: $'ORG 3700HRES DW ? ;存放16进制数(输出结果)MESG1 DB 0DH,0AH,'the result is:'ARES DB 4 DUP(?), 'H$'DATA ENDSSTACK SEGMENT PARA STACK 'STACK'DB 50 DUP(?)STACK ENDSCODE SEGMENTASSUME CS:CODE, DS:DATA, SS:STACKSTART: MOV AX, DATAMOV DS, AXMOV D X, OFFSET MESGMOV AH, 09H ;屏幕显示提示信息INT 21H ;输出字符串‘please input the BCD number you want to transfer:MOV DX, OFFSET BUFMOV AH, 0AH ;接收键盘输入INT 21H ;接收来自键盘输入的5位BCD码LEA SI, BUFADD SI, 2 ;偏移地址+2 使指针指向BCD码开始的地方MOV DX, 0MOV AX, 0MOV CX, 5 ;LOOP TIMES=5MOV BX, 10L1: MUL BXMOV DL,[SI]SUB DL, 30H ;将输入的BCD码转成十进制数ADD AX, DXINC SILOOP L1LEA SI, RESMOV [SI],AXMOV BX, AXLEA SI,ARESMOV CH,4MOV CL,4OUTPUT: ROL BX,CLMOV AX, BXAND AL, 0FHADD AL, 30HCMP AL, 39HJA ADDIJMP PRINTADDI: ADD AL, 07HPRINT: MOV [SI], ALINC SIDEC CHJNZ OUTPUTMOV DX, OFFSET MESG1MOV AH, 09H ;屏幕显示提示信息INT 21HMOV AH, 4CHINT 21HCODE ENDSEND START编译链接程序:(3)运行程序,输入待转换的五位ASCII码十进制数,得到输出结果;示例:输入 12345 ,则输出3039H。
微机原理实验报告
微机原理实验报告微机原理实验报告班级:自动化72组员梁慕佳 07054031张乐 07054033张林鹏 07054034实验一:8255 并行接口实验1 实验目的1. 学习并掌握8255 的工作方式及其应用;2. 掌握8255 典型应用电路的接法。
2 实验设备PC机一台,TD-PITE 实验装置一套。
3 实验内容1. 基本输入输出实验。
编写程序,使8255 的A口为输入,B口为输出,完成拨动开关到数据灯的数据传输。
要求只要开关拨动,数据灯的显示就发生相应改变。
2. 流水灯显示实验。
编写程序,使8255 的A口和B口均为输出,数据灯D7~D0由左向右,每次仅亮一个灯,循环显示,D15~D8与D7~D0 正相反,由右向左,每次仅点亮一个灯,循环显示。
4 实验原理并行接口是以数据的字节为单位与I/O 设备或被控制对象之间传递信息。
CPU和接口之间的数据传送总是并行的,即可以同时传递8 位、16 位或32 位等。
8255可编程外围接口芯片是Intel公司生产的通用并行I/O 接口芯片,它具有A、B、C三个并行接口,用+5V单电源供电,能在以下三种方式下工作:方式0--基本输入/输出方式、方式1--选通输入/输出方式、方式2--双向选通工作方式。
8255的内部结构及引脚如图2-6-1 所示,8255工作方式控制字和C口按位置位/复位控制字格式如图2-6-2所示。
图2-6-1 8255内部结构及外部引脚图图2-6-2 8255控制字格式5 实验步骤1. 基本输入输出实验本实验使8255 端口A工作在方式0 并作为输入口,端口B工作在方式0 并作为输出口。
用一组开关信号接入端口A,端口B 输出线接至一组数据灯上,然后通过对8255 芯片编程来实现输入输出功能。
具体实验步骤如下述:(1)实验接线图如图2-6-3所示,按图连接实验线路图;(2)编写实验程序,经编译、连接无误后装入系统;(3)运行程序,改变拨动开关,同时观察LED 显示,验证程序功能。
微机实验报告
实验一I/O地址译码与交通灯控制实验一、实验目的1、掌握并行接口8253的基本原理2、掌握8253的编程方法二、实验内容如图所示,L7、L6、L5作为南北路口的交通灯与PC7、PC6、PC5相连,L2、L1、L0作为东西路口的交通灯与PC2、PC1、PC0相连。
编程使六个灯按交通变化规律燃灭。
三、编程分析1、8255地址分析:控制寄存器地址: 0C40BHA口地址: 04C408HC口地址: 04C40AH2、十字路口交通灯的变化规律要求(1)南北路口的绿灯、东西路口的红灯同时亮三秒;(2)南北路口的黄灯闪烁三次,同时东西路口的红灯继续亮;(3)南北路口的红灯、东西路口的绿灯同时亮三秒;(4)南北路口的红灯继续亮、同时东西路口的黄灯亮闪烁三次;(5)转(1)重复。
3、C口置数分析由于发光二极管是共阴极相连,所以若要其发亮应给高电平;黄灯闪烁是让其不断交替亮灭来实现;同时分析可知只要有绿灯亮,灯就会持续亮三秒,黄灯亮就会闪烁三次。
4、程序设计流程图四、汇编语言程序STACK1 SEGMENT STACKDB 100 DUP(0)STACK ENDSCODE SEGMENTASSUME CS:CODE, SS:STACK1 DY PROC NEARPUSH CXMOV AX, 0FFFFH ;延时程序MOV CX, 02FFFHL0:DEC AXJNZ L0LOOP L0POP CXPOP AXRETDY ENDPSTART: MOV DX, 0C40BHMOV AL, BOUT DX, ALMOV DX, 0C40AHMOV BL, 6H ;设置延迟3秒L1:MOV AL, 00100100B ;南北绿灯亮,东西红灯亮OUT DX, ALCALL DY ;调用延迟子程序DEC BLJNZ L1MOV BL, 4H ;设置第二次闪烁3次L2:MOV DX, 0C40AHMOV AL, 01000100B ; 南北黄灯亮,东西红灯亮OUT DX, ALCALL DYMOV AL, 00000100B ;南北黄灯灭,东西红灯亮,实现要求闪的功能 OUT DX,ALCALL DYJNZ L2MOV BL,6H ;第三次设置亮灭时间为3秒L3:MOV AL,B ; 南北黄灯亮,东西红灯亮OUT DX,ALCALL DYDEC BLJNZ L3MOV BL,4HL4:MOV AL,B ;南北红灯亮,东西黄灯亮OUT DX,ALCALL DYMOV AL,B ;南北红灯亮,东西黄灯灭,实现闪的功能OUT DX,ALCALL DYDEC BLJNZ L4MOV DL,0FFH ;判断是否有键按下,结束程序 MOV AH,06HINT 21HJZ START ;没有键按下,进入下一次循环 MOV AH,4CHINT 21HCODE ENDSEND START五、实验现象:红黄绿灯变化规律如下:南北路口的绿灯、东西路口的红灯同时亮3秒左右;南北路口的黄灯闪烁若干次,同时东西路口的红灯继续亮;南北路口的红灯、东西路口的绿灯同时亮3秒左右;南北路口的红灯继续亮,同时东西路口的黄灯闪烁若干次;依次重复。
微机实验二 熟悉汇编程序建立及其调试方法
微机原理实验报告实验二熟悉汇编程序建立及其调试方法一、实验目的1.熟悉汇编语言源程序的框架结构,学会编制汇编程序。
2.熟悉汇编语言上机操作的过程,学会汇编程序调试方法。
二、实验内容1.学习编写汇编语言源程序的方法,了解数据存放格式。
2.阅读给出的程序,找出程序中的错误。
3.通过调试给出的汇编语言源程序,了解并掌握汇编语言程序的建立、汇编、链接、调试、修改和运行等全过程。
三、修改后的程序STACKSG SEGMENT PARA STACK'STACK' ;定义堆栈段DB 256 DUP (?) ;堆栈段为256个字节空间,STACKSG ENDSDATASG SEGMENT PARA 'DATA' ;设置数据段BLOCK DW 0,-5,8,256,-128,96,100,3,45,6,512;定义数据段有20个字的数据 DW 23, 56, 420, 75, 0,-1024,-67,39,-2000COUNT EQU 20 ;定义计数次数常量COUNT等于20MAX DW ? ;保留1个字空间,用以存放最大值结果DATASG ENDSCODESG SEGMENT ;代码段ASSUME SS : STACKSG, CS : CODESG ;STACKSG为堆栈段CODESG为代码段ASSUME DS : DATASG ;DATASG为数据段ORG 100H ;指令语句的起始偏移量为100HBEGIN: MOV AX, DATASG ;保存最大值结果MOV DS,AX ;给段寄存器赋值LEA SI,BLOCK ;将SI设为指向数据的指针MOV CX,COUNT ;设置循环次数,CX中装入计数初值DEC CX ;CX循环次数减1MOV AX,[SI] ;从内存取数到AXCHKMAX: ADD SI,2 ;取完一次数据,地址偏移量加2CMP [SI],AX ;数据指针当前所指单元的值与 AX比较JLE NEXT ;取其中较大者存于AX中MOV AX,[SI]NEXT: LOOP CHKMAX ;与数据段最后一个数据比较后跳出循环MOV MAX,AX ;保存最大值到MAXMOV AH,4CH ;退出程序INT 21HCODESG ENDSEND BEGIN程序的功能:输入20个数,比较出数值最大的一个数。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
广东技术师范学院实验报告
学院:自动化专业:
电气工程及其自
动化(低压电力智
能控制)
班级:
11低
电
成绩:
姓名:曹睿学号:2011104743018 组别:组员:
实验地点:教学楼703 实验日期:2012.04.11 指导教师签名:实验二项目名称:输入输出程序的编制
一、实验目的与要求
了解DOS的中断调用,实现数据的输入与输出,熟悉高级汇编调试工具Visualmasm的使用。
二、实验类型
验证型实验
三、实验原理及说明
利用DOS中断调用中的1号,2号和9号调用功能实现数据的输入与输出,同时通过本程序的调试了解汇编软件的使用。
1号调用:键盘输入字符
入口参数:无
出口参数:输入字符的ASCII码在AL寄存器中。
2号调用:显示器输出
入口参数:要输出的字符的ASCII码放在DL寄存器中
出口参数:无
9号调用:显示器输出字符串
入口参数:DS:DX中存放输出字符串缓冲区的首地址,字符串要求用字符”$”结束。
出口参数:无
四、实验主要仪器设备和材料
预习情况操作情况考勤情况数据处理情况
序号名称主要用途
1 电脑调试程序
五、实验内容和步骤
1、写一段程序,输出一个字符串“Visualmasm!”
步骤:在记事本里输入以下程序,把文件命名为zp1.asm:
DATA SEGMENT
STRING DB'Visualmasm!$'
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE, DS:DATA, ES:DATA
START:MOV AX,DATA
MOV DS, AX
MOV ES, AX
MOV AH,09H
LEA DX,STRING
INT 21H
MOV AH,4CH
INT 21H
CODE ENDS
END START
打开命令提示符,生成zp1.obj文件,接着生成zp1.exe文件,输入td zp1.exe,就可以在TD里查看输入的程序。
点击数据区,右键点击GOTO,输入5B72:0000,可以看到Visualmasm的ASCII码,56 69 73 75 61 6C 6D 61。
2、写一段程序。
从键盘读入一个小写字母,然后把它转换成大写字母并输出。
步骤::在记事本里输入以下程序,把文件命名为zp2.asm
DSEG SEGMENT
STRING DB'a'
DSEG ENDS
CSEG SEGMENT
ASSUME CS:CSEG,DS:DSEG
START:MOV AX,DSEG
MOV AH,01
INT 21H
SUB AL,20H
MOV DL,AL
MOV AH,02
INT 21H
MOV AH,4CH
INT 21H
CSEG ENDS
END START
打开命令提示符,生成zp2.obj文件,接着生成zp2.exe文件,输入小写字母a后,a的后面会自动生成相应的大写字母A,输入td zp2.exe,就可以在TD里查看输入的程序。
点击数据区,右键点击GOTO,输入5B72:0000就可以看到输入的小写字母的ASCII码,执行完TD里的第三条指令后,屏幕返回dos,输入字母a,又返回TD,继续执行指令,5B72:FFE8处会出现大写字母A的ASCII码。