zoukankan      html  css  js  c++  java
  • 汇编语言——王爽(02)

    debug中跟踪用loop指令实现的循环====计算ffff:0006 单元中的数*3 ,结果存储在dx中

    assume cs:code
    
    code   segment
        mov ax,0ffffh  ; 汇编程序中数据不能以字母开头
        mov ds,ax
        mov bx,6    ;ds:bx 指向ffff:6
        
        mov al,[bx]
        mov ah,0    ;设置(a1) = ((ds*16)+(bx)),(ah)=0
        mov dx,0    ;累加器清零 
    
              
        mov cx,3    ;循环三次
       s:add dx,ax
        loop s     ;累加计算(ax)*3
        mov ax,4c00h
        int 21h    ; 程序返回 code ends end

        上面代码不能直接运行,带有中文输入法的TAB按键

    调试过程:

    1、masm p3.asm

    2、link p3

    3、debug p3.exe

    4、t 单步运行

    5、u 查看相应地址中的汇编指令

    6、int21 指令要使用 P命令执行,才会显示最终结果

    // 跳过程序  debug G

    g + 要跳转的偏移地址,就可以对循环进行跟踪

    遇到LOOP命令可以使用P命令跳出循环 同样可以使用 g+0016直接跳出

    DOS 与 masm 编译器对------------------------mov al,[0];有这不同的解释

           解决方法-----------------------mov al,ds:[0]或者 mov al,[bl]  

    loop 与 [bx]的联合应用

     第6章  包含多个段的程序

     指明程序入口:start ‘’‘’‘’‘’‘’end start

     

     代码段中使用栈:实现逆序存放

  • 相关阅读:
    dockerfile 踩坑记录
    Windows安装配置xampp
    docker 容器中设置 mysql lampp php软链接
    linux 软件连接 创建/查看/删除
    mysql 远程连接权限
    linux设置静态获取ip
    android 自定义控件中获取属性的三种方式(转)
    android 自定义组件-带图片的textView
    CodeIgniter 3之Session类库(3)(转)
    CodeIgniter 3之Session类库(2)(转)
  • 原文地址:https://www.cnblogs.com/xwtstudio/p/12491216.html
Copyright © 2011-2022 走看看