zoukankan      html  css  js  c++  java
  • 实验二————寄存器的访问

    1.实验前的准备:在使用a命令调试之前,使用e命令将内存单元e 0021:0  0021:7  修改为30H,31H,32H,33H,34H,34H,35H,36H,37H

            把第74页的mov ax,ffff ——>mov ax,0021

    mov ax,0021

    mov ds,ax

    mov ax,2200

    mov ss,ax

    mov sp,0100

    mov ax,[0]    ;ax= 3130

    add ax,[2]    ;ax= 6462

    mov bx,[4]    ;bx= 3534

    add bx,[6]    ;bx= 6c6A

    push ax       ;sp= 00FEH ,修改的内存单元地址是 2200:00FE 内容为 6462H

    push bx       ;sp= 00FCH ,修改的内存单元地址是 2200:00FC 内容为 6c6AH

    pop ax        ;sp= 00FEH ,ax= 6c6AH

    pop bx        ;sp= 0100H ,bx= 6462H

    push [4]      ;sp= 00FEH ,修改的内存单元地址是 2200:00FE 内容为 3534

    push [6]      ;sp= 00FCH ,修改的内存单元地址是 2200:00FC 内容为 3736

     以上是实验结果

    以下的图片是实验内容的截图:

    实验2 用机器指令和汇编指令编程 

    (2)仔细观察图3.19中的实验过程,然后分析:为什么2000:0~2000:F中的内容会发生改变? 

    输入指令

    为什么会改变??因为mov ss,ax 和mov sp,10改变了其指针指向

    所以发生了改变

  • 相关阅读:
    Linux内核从原理到代码详解
    linux内核研究-8-块设备I/O层
    《Linux内核分析》课程总结
    Nginx 重写规则指南1
    Nginx初探
    Nginx源码分析:3张图看懂启动及进程工作原理
    nginx源码分析 +redis的那些事儿
    I/O 模型及其设计模式
    高并发性能调试经验分享
    myawr
  • 原文地址:https://www.cnblogs.com/acmblog/p/9887663.html
Copyright © 2011-2022 走看看