前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >汇编语言 手记1

汇编语言 手记1

作者头像
用户1154259
发布2018-01-17 16:49:00
1.2K0
发布2018-01-17 16:49:00
举报

机器语言-汇编语言-高级语言

汇编语言特点:

1 与硬件相关

2 与机器指令一一对应

3 须详细描述如何做

4 可移植性差

CPU功能结构:

  总线接口部件BIU

  执行部件EU

CPU寄存器结构:

  数据寄存器

  指针及变址寄存器

  段寄存器

  控制寄存器

总线接口单元BIU----完成CPU与主存储器或外围设备之间的信息传送

执行单元EU----完成指令的执行

两个单元独立,并行工作,使指令的读取与执行部分重叠,提高了指令的执行速度----指令流水线结构

数据寄存器(可以字或字节形式访问,例如AX的高字节、低字节分别用AH/AL表示)

AX累加器 存放操作数和结果

BX基址寄存器 存放偏移量

CS计数寄存器 循环中计数

DX数据寄存器 双字长时与AX组合成32位数

指针和变址寄存器(存放地址的偏移量,也可以存放操作数 但只能以字为单位访问)

SP堆栈指针寄存器

BP基址指针寄存器

SI源变址寄存器

DI目的变址寄存器

段寄存器(存放相应段的段基址(段首址的高16位))

CS 代码段寄存器

DS 数据段寄存器

SS 栈段寄存器

ES 附加段寄存器

控制寄存器

IP 指令指针寄存器:即程序计数器,向下一条指令在代码段中的偏移量

PSW程序状态寄存器:记录系统运行中的各种状态和信息。由各种标志位构成,反映运算后的结果特征,将影响某种指令的执行。

20条地址线,最大为1MB

以字节为单位变址,即一个字节数据占用一个存储单元

以字为单位存储数据时,占相邻两个单元,高8位存放在高地址字节,低8位存放在低地址字节

字单元的地址用它的低地址来表示

访主存指令中应指出是字节访问还是字访问

字单元的地址一般为偶数

段概念的引入

16位寄存器如何表示20位的地址?

  采用存储器地址分段的方法

段是最大长度为64kb的内存储器块

段的起始地址低4位必须为0

用户可以用同时使用4个段,段间可以邻接,重叠或不相邻

代码段存放当前程序的指令代码

数据段存放程序涉及的源数据或结果

堆栈段是以“先入后出”为原则的数据区

附加段是辅助数据区,存放串或其他数据

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2013-02-06 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
对象存储
对象存储(Cloud Object Storage,COS)是由腾讯云推出的无目录层次结构、无数据格式限制,可容纳海量数据且支持 HTTP/HTTPS 协议访问的分布式存储服务。腾讯云 COS 的存储桶空间无容量上限,无需分区管理,适用于 CDN 数据分发、数据万象处理或大数据计算与分析的数据湖等多种场景。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档