zoukankan      html  css  js  c++  java
  • 检测点3.1

    检测点3.1

    (1)

     寄存器是互相独立的

    (2)内存中的情况如图3.6所示

    各寄存器的初始值: CS=2000H,  IP=0,  DS=1000H,  AX=0,  BX=0;

    ①写出CPU执行的指令序列(用汇编指令写出)

    CS:IP

    2000H*10H+0=20000H  物理地址

    20000H对应指令——》mov  ax,6622H

    jmp  0ff0:0100H

    FF0H*10H+100H=10000H——》mov  ax,2000H

    mov ax,[0000]

    mov  ax,[0002]

    读到指令缓冲器中

    IP=IP+所读指令的长度(字节数)

    执行指令缓器中的内容,回到第一步

    ②写出CPU执行每条指令后,CS、IP和相关寄存器中的数值。

    mov  ax,6622H                           cs=2000H   ip=0+3=3      ax=6622H

    jmp  0ff0:0100H                             cs=2000H  ip=3+5=8

    mov  ax,2000H                            cs=0FF0H  ip=100H+3=103H     AX=2000H

    mov ds,ax                                       cs=0FF0H  ip=103H+2=105H     DS=2000H                  2000:8   C389H

    mov ax,[0000]                                 CS=0FF0H    ip=105H+3=108H    ax=C389H

    mov  ax,[0002]                                cs=0FF0H     ip=108H+3=10BH      ax=EA66H                  2000:2  EA66H 

    ③再次体会:数据和程序(就是指令)有区别吗?如何确定内存中的信息哪些是数据,哪些是程序? 

    CS:IP读取的都是指令

    DS:【偏移地址】 读取  当作数据

    去修改寄存器中的内容  去决定  数据从哪里来  指令从哪里来

  • 相关阅读:
    leetcode每日一题:836. 矩形重叠
    单链表之删除头结点,查找等于定值x的结点数,单链表的逆置
    拼数,零幺串
    最大公约数/最小公倍数
    寻找二叉树双亲结点
    Object类的派生-c++
    牛客小白月赛22
    二叉树的基本操作
    字符串的反转,替换,删除
    [2011山东ACM省赛] Identifiers(模拟)
  • 原文地址:https://www.cnblogs.com/hsp1269/p/13777869.html
Copyright © 2011-2022 走看看