アセンブリ(七)

781 ワード

Loop命令
  • loop命令とcxレジスタを組み合わせて使用し、高度な言語のようなforを循環操作するために使用され、while
  • フォーマット
  • を使用
        mov cx,    
      :
                 
        loop   
    
  • loop命令実行フロー
  • ステップ1 cxレジスタの値-1、cx=cx-1
  • ステップ2はcxの値
  • を判断する.
  • ゼロ実行符号の符号でない場合は、ステップ1
  • を実行する.
  • ゼロの場合loopの後のコード
  • を実行する
    補足:
  • は、dsセグメントによる取得を除くデータを取得する.
  • を取得するために他のセグメントアドレスを利用することもできる.
    mov ax,ds:[0]
    mov ax,cs:[0]
    mov ax,ss:[0]
    mov ax,es:[0]
    

    8086擬似命令
  • db(define byte)カスタムバイト
  • dw(define word)カスタムワード
  • Callとret命令
    Call指令
  • call番号
  • 次の命令のオフセットアドレスをスタックに入れます!
  • 位置決めされたアドレスにジャンプして命令を実行します!

  • ret命令
  • ret命令は、スタックトップの値POPをIP
  • に与える.
    記事リンク:http://www.jianshu.com/p/2d5c79c32ddb
    コレクションだけに敬意を表しません!