zoukankan      html  css  js  c++  java
  • 汇编注意

    1.汇编运行程序时卡住:一般是没有设置开始标识符和CX编写错误


    2.重新编写程序后没有变化:一般是没有重新编译(masm xx;)和连接(link xx;)

    3.程序有结果,但是没有结束运行:1.少写了mov ah,4ch , int 21h;2.CX编写错误

    4.根据调试需要,可以修改初始值,能使程序更快地进入所需要观察的状态。

    5.要想查看程序对内存单元的修改:若程序很长,逐句编译查看内存很麻烦。只需运行一次程序后再用debug查看寄存器,然后通过寄存器来获得内存单元的地址,从而查看内存单元的内容。

    6.不能直接把数据送到内存单元,需要间接借助寄存器(某些)

    如:

    mov word ptr es:[bx],ds:[bx+si+3]是错的

    要改为

    mov ax,ds:[bx+si+3]

    mov es:[bx],ax

    add byte ptr ds:[bx],es:[bx]是错的

    要改为

    mov al,es:[bx]

    add ds:[bx],al

    7.不能直接把数据送到段寄存器(cs,ss,ds,es),需要间接借助寄存器(某些)

    如:

    mov ds,data是错的

    要改为

    mov ax,data

    mov ds,ax

    8.当两个数值/寄存器都不确定大小(byte/word/dword)时,使用byte/word/dword ptr

    其中offset ,[]:[]属于不确定大小;ax,al等寄存器属于确定大小

  • 相关阅读:
    loj#6433. 「PKUSC2018」最大前缀和(状压dp)
    PKUWC2019游记
    10. Regular Expression Matching
    9. Palindrome Number
    8. String to Integer (atoi)
    7. Reverse Integer
    6. ZigZag Conversion
    5. Longest Palindromic Substring
    4. Median of Two Sorted Arrays
    3. Longest Substring Without Repeating Characters
  • 原文地址:https://www.cnblogs.com/cmyg/p/6896705.html
Copyright © 2011-2022 走看看