zoukankan      html  css  js  c++  java
  • Debug初次使用

    打开cmd命令输入debug即可进入debug程序

    -后边就是输入指令的地方

    检查和修改寄存器内容的命令R(register),命令格式很多本着学不到不用的原则,先从最简单的开始:
    显示CPU内所有寄存器内容和标志位状态,其格式为:

    具体干嘛的先不管了,先会些简单的命令能做教程的实验就行了,省的学的太多脑子也记不住,硬记有什么用呢,不知道干嘛用的记住还不如不记

    先做个简单的题开始,输入a命令即可进入汇编编写状态(数字后带H代表的是数值为16进制)

    mov ax,1234H ;把1234H放到ax寄存器中 C语言为:ax=1234H

    输入后按回车可退出编辑状态,输入-t进入单步状态可查看指令对于寄存器的改变一下类似

    ax是16位寄存器为了兼容8位寄存器所以可以分为两个8位寄存器使用顾ax可分为高8位ah和低8位al

    mov ah,89H ;把89H放到高8位寄存器

    mov al,67H ;把67H放到低8位寄存器

    调试前可看到原来ax的数值为1234H,输入t可进入单步调试第一步mov ah,89H把高8位的12H更改为了89H,第二步mov al,67H把低8位的34H更改为了67H,所以最后ax的存放的数据为:8967H

    mov bx,4321H ;bx和ax类似不再细说 C语言为:bx=4321H

    add ax,bx ;这部是把ax,bx的数值相加最后结果存放在ax中C语言的格式为:ax=ax+bx

    因为原来ax存放的值为:8967H bx值为:4321H 相加后把最终数值存放在ax中所以ax的值为8967H+4321H=CC88H

    好了简单的使用会了输入q退出,可以继续开始学习汇编语言了。

  • 相关阅读:
    CentOS7使用firewalld打开关闭防火墙与端口
    SELinux: Could not downgrade policy file
    CentOS 安装 semanage 命令
    漏洞: RHSA2017:3075: wget security update
    CentOS7增加或修改SSH端口号
    gnl's not lao 道德经 英文版
    当代 IT 大牛排行榜
    当代 IT 大牛排行榜
    2008 年个人回忆与总结
    Patch2 for NetBeans IDE 6.5 Now Available
  • 原文地址:https://www.cnblogs.com/lilongjiang/p/2078716.html
Copyright © 2011-2022 走看看