第二章 寄存器

寄存器 : 可以通过修改寄存器中的内容实现对CPU的控制

2.1 通用寄存器

  • AX BX CX DX,通用寄存器可以拆分为两个独立的8位寄存器 AL , AH 如下图所示
    这里写图片描述

2. 2 字在寄存器中的存储

这里写图片描述

2.3 物理地址

  • 不同的CPU 有形成不通物理地址的方法 例如8086CPU 16*段地址 + 偏移地址 = 物理地址
  • 具体形成方式 :
    | 这里写图片描述

”’
一个X进制的数据左移1位,相当于乘以 X
”’

2 . 段的概念 : 段的划分来自于CPU的内部

8086CPU 四个段寄存器 ; CS , DS ,SS ,ES

1. 代码段 : CS : IP   

这里写图片描述 

步骤 

 1. 读取CS:IP 地址的指令进入缓冲器
 2. IP = IP + 指令长度 ,进入下个地址
 3. 重复这个过程执行指令   

2. 修改 CS, IP 指令 方法

方法一 : 1.     jmp  段地址 : 偏移地址   目的: 修改CS:IP 内容

这里写图片描述

3. debug模式下的调试


    r 查看当前寄存器值,修改
     d 查看内存地址段的内容
    e 修改内存地址中的内容
    u 将内存地址段的内容翻译为指令
    t 执行开始CS:IP处的指令
   a 输入汇编指令
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
计算机组成原理 课程设计报告 实验项目:1、设计一个具有带进位加法和立即数寻址方式的模型机 2、设计一个具有带进位加法和条件跳转的模型机 专 业: 计算机科学与技术 班 级: 09级37-3班 学 号: —————— 姓 名: 合 作: 指导教师: 实验时间: 2011-6-15 ~~ 6-17 实验一:设计一个具有带进位加法和立即数寻址方式的模型机 1、问题描述 本题目设计的是一台具有输入、输出、带进位加法、储存和跳转功能的模型计算机, 并写出工作程序和测试数据验证所设计的指令系统。 2、设计目标 在设计完本程序后,所设计模型机能够完成从一个外设输入一个数到指定的寄存器中 ,另外输入立即数并将其存入另一个、寄存器中,两数进行进位相加并将结果保存到第 一个寄存器,输出结果,并显示。另外,实现无条件跳转至开始。 3、指令格式 "助记符号 "机器指令码 "功 能 " "IN "0000 0000 "Input -> R0 " "ADC Imm "1110 0000 XXXX "R0+Imm+CY -> R0 " " "XXXX " " "STA addr "0010 0000 XXXX "R0 -> [addr] " " "XXXX " " "OUT addr "0011 0000 XXXX "[addr] -> LED " " "XXXX " " "JMP addr "0100 0000 XXXX "[addr] -> PC " " "XXXX " " 4、设计微指令 (1)定义指令码,及定义一个下地址为08H "指令 "指令编码 "微地址 " "IN "0000 0000 "08 " "ADC "0001 0000 "09 " "STA "0010 0000 "10 " "OUT "0011 0000 "11 " "JMP "0100 0000 "12 " (2)设计微指令编码表 "微地址 "S3 "S2 " "MOVrs,rd "XXXX Rs Rd "Rs->Rd " "ADCrs,rd "XXXX Rs Rd "Rs+Rd+CY -> R0 " "BZCD "00 00 00 00 "当cy=1或z=1时,D->" " "D "PC " " " "否则,顺序执行。 " "INrd "XXXX 01 Rd "SW->rd " "OUTrd "XXXX 10 Rd "Rd -> LED " "HALT "XXXX 0000 "停机 " 3、设计微指令 (1)定义一个下地址为20H "指令 "指令编码 "微地址 " "IN "0011 0000 "23 " "MOV "0010 0000 "22 " "ADC "0001 0000 "21 " "BZCD "0000 0000 "20 " "OUT "0100 0000 "24 " "HALT "0101 0000 "25 " (2)设计微指令 微地址 "S3 "S2 "S1 "S0 "M "Cn "WE "A9 "A8 "A "B "C "UA5-UA0 " "00 "0 "0 "0 "0 "0 "0 "0 "1 "1 "0 "0 "0 "0 "0 "0 "0 "0 "0 "0 "0 "0 "0 "0 "1 " "01 "0 "0 "0 "0 "0 "0 "0 "1 "1 "1 "1 "0 "1 "1 "0 "1 "1 "0 "0 "0 "0 "0 "1 "0 " "02 "0 "0 "0 "0 "0 "0 "0 "0 "1 "1 "0 "0 "0 "0 "0 "0 "0 "1 "1 "0 "0 "0 "0 "0 " "20 "0 "0 "0 "0 "0 "0 "0 "1 "1 "0 "0 "0 "0 "0 "0 "0 "1 "1 "0 "0 "0 "0 "0 "1 " "11 "0 "0 "0 "0 "0 "0 "0 "1 "1 "1 "1 "0 "1 "1 "0 "1 "1 "0 "0 "0 "0 "0 "1 "1 " "03 "0 "0 "0 "0 "0 "0 "0 "0 "1 "1 "0 "1 "0 "0 "0 "1 "1 "0 "0 "0 "0 "0 "0 "1 " "21 "0 "0 "0 "0 "0 "0 "0 "1 "1 "0 "1 "0 "0 "1 "0 "0 "0 "0 "0 "0 "0 "1 "0 "0 " "04 "0 "0 "0 "0 "0 "0 "0 "1 "1 "0 "1 "1 "0 "0 "1 "0 "0 "0 "0 "0 "0 "1 "0 "1 " "05 "1 "0 "0 "1 "0 "0 "0 "1 "1 "0 "0 "1 "1 "0 "1 "0 "0 "0 "0 "0 "0 "0 "0 "1 " "22 "0 "0 "0 "0 "0
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值