当前位置:文档之家› 汇编实验

汇编实验



实验三 字符串处理程序

在数据段有如下定义: BUFF DB ‘ABCD$EFGHIJK$’ STR1 DB 12 DUP(?) 用串指令编写程序完成以下操作: (1) 对字符串STR1全部置空格符。 (2) 从左到右把BUFF中的字符串传送到 STR1。
(3) 从右到左把BUFF中的字符串传送到 STR1。 (4) 比较BUFF与STR1两个字符串是否相等, 如相等则DX=1,否则DX=0。 (5) 查找BUFF中有无字符$,把字符$出现 的次数计入BX寄存器。

2. 双字长数X存放在DX和AX中,设 (DX)=1004H,(AX)=1002H,编程实现: (1) 对存放在DX和AX中的双字长数求补,并 在debug下查看结果。 (2) 用减法指令求0-X,并在debug下查看结 果。
3. 试编写一个程序求出双字长数的绝对值, 双字长数存放在DX和AX中 。


汇编实验
实验一 上机过程及程序调试
பைடு நூலகம்
1.编写调试P18例题2,回答问题: (1)该程序在内存中的起始逻辑地址是多少?结束 逻辑地址是多少?共占多少字? (2)程序中定义的串”Hello world!$”在内存中的起 始逻辑地址是多少?请用Debug命令显示该串。 (3)用T命令跟踪程序,在跟踪执行int 21h时出现什 么问题? (4)如果用带有断点的G命令运行该程序,写出命令。
实验名称 实验目的 实验内容 程序、运行结果、关键调试步骤 实验小结

实验二 算术运算处理程序

1.用16位指令编制程序,处理16位数的加法运算 题114+(-109) 数据段如下定义: DATAS SEGMENT sum1 dw 114 sum2 dw -109 DATAS ENDS (1) 在调试状态下,查看加法的结果及加法执行后 的ZF,SF,CF,OF标志位情况,并分析原因。 (2) 在调试状态下,查看数据段的114和-109的存 储情况。

2.仿第二章例题1编写程序,输入大写字母,输出 对应的小写形式,并用Debug命令调试,回答以 下问题: (1)该程序在内存中的起始物理地址是多少?结束 物理地址是多少?共占多少字节? (2)如果用带断点的G命令运行该程序,写出命令。 (3)用P命令单步调试,用T命令单步调试,指出两 者不同。
实验报告写作要求
实验四 分支程序设计

1. P117 5.4 注意:对输入须合法性检查 附加要求: 如果用户输入不合法,则显示提示语句: please input lower case letters! 2. P219 实验3[3] 注意:在数据段定义分支地址表 参考P105 例5.3
3. P219 实验3[2]
相关主题