码迷,mamicode.com
首页 > 其他好文 > 详细

实验三 指令实验(一)

时间:2018-10-26 14:23:39      阅读:199      评论:0      收藏:0      [点我收藏+]

标签:指令   man   ali   输出   内容   字符   urb   ext   存储   

 

 

 

实验三  指令实验(一)

[实验目的]

1、掌握指令的含义,进一步加深对指令的认识;

2、掌握用Turbo Debugger调试程序的方法。

[实验内容]

1、改写例3.81,找到result单元存1,未找到存0

     3.81 有一串L个字符的字符串存储于首地址为ASCII_STR的存储区中。如要求在字符串中找“空格”(ASCII码为20H)字符,找到则继续执行(NUM单元置1);如未找到则转到NOT_FOUND(NUM单元置0)去执行,编制实现这一要求的程序如下:

       MOV    CX,L

       MOV    SI,-1

       MOV    AL,20H

NEXT:

       INC    SI

       CMP    AL,ASCII_STR

       LOOPNE NEXT

       JNZ    NOT_FOUND

         .

         .

         .

NOT_FOUND:

.

         .

         .

 技术分享图片

 

 

 

 

2、用TD验证例3.57,例3.583.61

     3.57 要求屏蔽0、1两位,可用AND指令并设置常数0FCH。

               MOV   AL,0BFH

               AND   AL,0FCH

 技术分享图片

 

3.58 要求第5位置1,可用OR指令

           MOV   AL,43H

           OR    AL,20H

 技术分享图片

 

3.61 要求操作数的某些数位变反,可以使用XOR指令,只要把源操作数的立即数字段相应位置成1就可以达到目的。如果求第0、1位变反,可使用如下指令:

        MOV    AL,11H

        XOR    AL,3

 技术分享图片

 

3、TD验证例3.29,例3.30,看SP的变化,调试时先给AX赋值。

未赋值时:

 技术分享图片

 

赋值后:

技术分享图片

 

4、输入下列指令,单步运行,观察AX,BX,SP,堆栈区域数据变化情况

       MOV   AX,1234H

 

       MOV   BX,5678H

 

       PUSH  AX

       PUSH  BX

       MOV   AX,0ABCDH

       MOV   BX,55AAH

       POP   BX

       POP   AX

 

 技术分享图片

技术分享图片

技术分享图片

 

 技术分享图片

技术分享图片

 

 技术分享图片

技术分享图片

技术分享图片

 

[实验小结]

1.有空格改为20H

 

 

2.

输入时注意:

0BH    

0FFH

 

 

  1. -1”的输入:0FFFF
  2. 此句话为:结果输出位置:

01则查找到:存放位置:0210

00则未查找到:0210

 

实验三 指令实验(一)

标签:指令   man   ali   输出   内容   字符   urb   ext   存储   

原文地址:https://www.cnblogs.com/Catherinezhilin/p/9855749.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!