汇编实验数据串传送和查表程序_第1页
汇编实验数据串传送和查表程序_第2页
汇编实验数据串传送和查表程序_第3页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

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

文档简介

1、汇编实验-数据串传送和査表程作者: 日期:实验报告2016 2017 学年第二学期实验课程汇编语言程序设计学生姓名实验项目数据串传送和查表程序学院实验性质验证性实验班级学号实验地点同组人数1第13组实验日期第周星期第节成绩环境参数DOSBoxO.74一、实验目的及要求1、堆栈。堆栈指示器SP和堆栈操作指令PUSH。POP。2、段寄存器和物理地址计算。3、査表法和査表指令XLATo4、数据串传送程序和数据串传送指令MOVS。STOS及重复前辍REP。5、循环指令ROL。逻辑与指令AND和淸方向位指令CLD。6、伪操作指令DB。二、实验准备1. 编写实验任务要求的程序2. 学习一下调试方法利用査表

2、方法把DX的内容(16进制数)转换成ASCII码:1)、用A命令键入下列程序:MOV BX, 1000MOV DI, 2000MOV CX, 4LOP: PUSHCXMOV CL, 4ROL DX, CLPOP CXMOV AL, DLAND AL, OFXLATCLDSTOSBLOOP LOPINT 20C:Docurnent:s: md Sett ins.Adnin tr*tor>debugIB69:0i00BG9:0103B69;如 06BG9:0109B6?:010ftBG9:018CB6?:010EBG9:010PB69:0111BG9:0113B69;0114B69:0115

3、B69:0116BG9:0118B69:011AMOV BX.i00aMIOU DI,2000 MOV CX.4 PUSH CXMOV Gio 4 ROL DX.CLPOP CXHOU AL.DL AND ftL,0F XLATGLD STOSBLOOP 0109 INT 232)用A命令在1000H处键入下列ASCII码并用D命令检查之:DB、0 123456789ABCDEF'«* « A1008B6?:1000 DB,0123456789ABCMF,B6?;1010FD10090B69:i000 0869:1010 0869:1020 08691930 0B&

4、amp;9:1040 0B69:1050 0869:1060 0B69;1070353637-38394142434445460123456789ABCDEFC97424-F644070F750CF644.Lt$.D.u.D8A0547-EB01588887709243t &G.X“ i)CE84100-FEC975DCF6440780uA.u.148A44-0A888770?24383FB00FECET5ECF6440?0F75080LI 計 U D ll 02EB0C-0AD274088F066A92Dtt.j 02005S-C351065?IE078BCBu.U.Q.M.4B 6

5、3 434 8 3020727E 38656808 3007FE1F 2C40A375 34740007 lfi0B854A 381P1V4C 0173506E 3d 08 74F F用D命令检查时注意左边的ASCII码值和右边的字符。3)用R命令给DX送一个四位的16进制数(例7F8E) ° 亠-w AX JT TX 一R DX DX 0000;7F8E'4)用T命令逐条运行这程序到LOOP指令处,观察并记录每次运行结果,特别是SP和堆栈内容(用D命令检查)AX=00E7BX=1000CX=0004DX=F8E7SP=FFEEBP=0000SI=0000DI =2000DS

6、=0B69ES=0B69SS=0B69CS=0B69IP=0111NUUP ElPLNZ NAPOCY0B69:0111 -T240FANDAL,0FAX=0007BX=1800CX=0004DX=F8E7SP=FFEEBP=8000SI =0000DI =2000©S=0B69ES=0B69SS=0B69CS=0B69IP=0113NUUP ElPLNZ NAPONCc:f C: fIHDOTSsyst e«L32cBd. exe - debugBP-8000 SI-0000 DI=2000 NU UP El PL NZ NA PO NCT9:01i3 D? XLftTA

7、X-0037 BX=1900 DS=0B69 ES=0B69 IB69:0114 PCTX=003? BX=1000 S=0B69 ES=0B69 D69:0115 AATX=0037 BX=1000 S=0B69 ES=0B69 B69:0116 E2F1DX-F8E7 SP=FFEE CS=0B69IP=011449CCX=WU«4 DX=F«E7SS=0B69CS=0B69STOSBSP=FFEE IP=0115BP=0000 S1=0000 DI=2000NU UP El PL NZ NA PO NCCX=0004 DX=F8E7SS=0B69CS=0B69LOOP

8、Ml09SP=FFEE IP=0116BP=0000 SI=0000 DI=2001NU UP El PL NZ NA PO NC5)用G命令将此程序运行到结朿,并用D命令检查2000H处所转换的结果。可注意屏幕右边的ASCII字 符耳D漣否一致。popami tev-miinated. normallyD200O 889:2009 B69:2010 B69:2020 B69:2030 B69:2040 869:2050B69:2060B69:207037 46 38 65 65 6E70 69 6520 66 6972 20 6C4F 50 5975 72 632B 20 7345 65 6

9、12E736GGF20656FD0 53 B0502 66 52772?3-2074686520730D0A-434C530D0A916E65-206P72206D6F2074-6F20616E6F747469-6FGE2EODOAOB4120-7C202F425D202F41-207C2。2F425D6365-205B2F41207C?27F8Eears the scr6FeenCLSCo65pies oneor more65f iles to anothc43i* LocationC6FOPY /A! /BJ soSBurce /A! /BJ 2F* source/A 1 /3328A30

10、0647607223.验证:数据串搬家程序:1)用A命令键入下列程序:MOVMOVMOVLOP: MOVMOVINCINCSI, 1000DI, 1500CX, OFAL, SIDI, ALSIDILOOP LOPINT 20!K9:di00B69:0103869:0186B69:01090B69:010D 0B69:dlOE 0B69:010F 0869:0111 |0B69:0113mou siaoee MOU DI,150fl MOU CX,0F MOU AL,SI MOU DI,AL INC SIINC DI LOOP 0109INT 202 )用A命令DB伪指令在1000H键入下列字

11、符串:'IBH_PC COMPUTER'-A10000B6X1000 DB TBbLTC COMPUTER'0B69:100F3)用G命令运行此程序,并用D命令检査目的地址处的字符与源串是否一致。B69:100949424D5F504320434F4D58555445528fi869:1010DI8A4C08BBC97424-F644070F750CF644669:1020077406268A0547-EB01588887?09243869:103083FB407563E84100-FEC975DCF6440780B69:104075180AF674148A44-0A8

12、88770924383FBB69:1050407503£82300FECE-75ECF644070F7588B69:1060F64407107402EB0C-0AD274088F066A92B69:1070FECA75F8E802QQ55-C3510657IE078BCBPror-an terminated normally -DI000IBMJPC COMPUTER. Lt$.D u.D匸GXp.C .11 .Aii.D. lla saD».a a D G a altU. . DltD. .tt.j.uu UQW士4段寄存器概念及字符串传送指令练习:1)用A命令键入下列程

13、序:MOV SI,0MOVDI, 0MOVAX, 1000MOVDS, AXMOVAX, 1500MOVES, AXMOVCX, OFCLDREPMOVSBINT20FftB69:0100MOUSIr0B69:0103nouI>I,0869:0106MOUAX,1000B69:0109nouDS. AXiB69!810BMOUAX,1500B69;010EnouES.fiXB69:0110MOUCXr0FB69:0113CLDBG9:0114REPKOUSBB69:O116INT20B69:01182)用A命令DB伪指令在1000:0000处键入字符串1 IBM.PC COMPUTER&

14、#39;,并用D命检査之-ftl000:00001000:0000 DBJIBHJPC COMPUTERf1000:000F OM 3)用D命令检査0F00:1000处内容,看是否一样。为什么?-D0F00:1000 0F00:1000 0F00:1010 0P00:i020 0F00:1030 0F00:1040 0F00:1050 0F00:1060 0F00:107020000000 4A CS SD C5?CO 9 CS S486900013®2O92 00 000D 00 0004 00 00 0003 00 05000000000400000005000000050000

15、00050000000500000004 0 0 0 0 0 0 00 00 000 0 00 80 00 0 0 02000000050000000IBMJPC COMPUTER.4)用G命令运行此程序,检査目的地址1500:0000处内容。并记下DS与ES值。_GPro gran ternindted nornall/D1500:00001&00:»00»49 42 4D5F5043 20 43-4F4D 50 55 54 45 5200 IBM.PC COMPUTER. > » » MB»» »»

16、; MB»OB三、实验任务1、把实验准备(二)程序中的目的地址改为1002H,再运行此程序,看能不能把1000H开始的字符串搬到1002H开始的地方去?0B&9:0103 MOU DU10020B69;0106 HOU CX,0F0869:0109 MOU AL.SI0B69:010B HOU DIJ,AL0B&9:010D IMG SI0B69:010E ING DI0Bfc9:010F LOOP 01090B&?:0111 I NT 200869:0113-A10000B&9:1000 DB 'IBMJC COHPUTEBJ0B69:100

17、F-GProgran terninAted normally -D10000B69;1000 49 42 49 42 49 42 49 42-49 |0B&9:1010i 49 8A 4C 08 0B C9 74 24-F642 49 42 49 42 49 42IBIBIBIBIBIBIBIB44 07 0F 75 0C F6 44I.LD.uD字符串移动失败。2、修改实验准备(二)程序以做到把1000H开始的字符串搬到1002H开始的地方去terminated norvnallsrI BIBMJPC COMPUTEIBM_PC COrtPUTE-DI000B69:100049 42

18、 49 42 4D 5F 50 43-20 43 4F 4D 50 55 54 45kD10020B69:106049 42 4D 5F 50 43-20 43 4F 4D 50 55 54 45移动成功!程序淸单:MOV SI,1OOFMOV DI,1011MOV CX, 10LOP: MOV AL,SIMOV DI,ALDEC SIDEC DILOOP LOPINT21H0669:0190MOU10869:0103HOUDX.FFFF0869:0106TEST DXz00B69:010AJZ 01130B69:010CNEGD*0B69:010ENEGAX0B69:0110SBBDX.00

19、869:0113HOUBX.AX0B69:0115MOUCX.DX0869:0117tiouAX.BX0B69;0119I NT213、编一程序段,求双字(DX, AX)的绝对值0B69:011B INT340B69:011I> ADD0B69:011F OR SI,BP*SI*4A0B69:0122BP=0000 SI=0000 DI=0000NU UP El PL ZR HA PE NC-G=100 119AX=0900 BX=0000 CX=FFFF DX=FFFF SP=FFEE DS =0B69 ES=0B6? SS=0B69 CS=0B69 IP=0119 (0069:0119 CD21I NT21程序淸单:MOV AX,0000MOV DX,FFFFTEST DX,0JZ LOPNEG DXNEG AXSBB

温馨提示

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

评论

0/150

提交评论