当前位置: 首页 > news >正文

商丘做网站的价格网站怎么做优化排名

商丘做网站的价格,网站怎么做优化排名,如何对自己建设的网站进行推广,dedecms网站地图目录 内存中字的存储 示例: 数据段寄存器DS与[address] 字的传送 数据段简介 CPU提供的栈机制 栈段寄存器SS和栈顶指针寄存器SP PUSH AX指令的完整描述 示例图 POP AX指令的完整描述 示例图 栈顶超界问题 示例一: 示例二: 内存中字…

目录

内存中字的存储

示例:

数据段寄存器DS与[address]

 字的传送

数据段简介

CPU提供的栈机制

栈段寄存器SS和栈顶指针寄存器SP

PUSH AX指令的完整描述

示例图

 POP AX指令的完整描述

示例图

 栈顶超界问题

示例一:

 示例二:


内存中字的存储

在CPU中,用寄存器存储一个字,高8位存放高位字节,低8位存放低位字节;

在内存中,由于一个内存单元是一个字节,则一个字需要用两个地址连续的内存单元存放,这个字的低位字节存放在低地址单元中,高位字节存放高地址单元

示例:

假设从0地址处存放数据1,然后从2地址处存放数据2;

数据1:20000      16进制表示:4E20H

数据2:18             16进制表示:  0012H

 注:将起始地址为N的字单元简称为N地址字单元,由N号单元和N+1号单元组成

例如:用0,1两个内存单元存放的数据4E20H称之为4E20H存放于起始地址为0的字单元中;

数据段寄存器DS与[address]

CPU要读写一个内存单元时,必须给出该内存单元的地址,CPU是根据段地址与偏移地址给出物理地址,8086CPU中用DS寄存器存放要访问数据的段地址,而[address]表示内存单元的偏移地址

question: 如何将内存物理地址为10000H中的数据读取到寄存器AL中?

思考如下: 物理地址为10000H,取段地址为1000H,偏移地址为0000H; 将段地址保存到DS寄存器中,但是8086CPU不支持将数据直接送入段寄存器的操作,考虑一个通用寄存器作为中转;

// mov指令可以完成两种传送
// 1. 将数据直接送入寄存器  2.将一个寄存器中的内容送入另一个寄存器
mov bx,1000H
mov ds,bx
mov al,[0]

 字的传送

1. mov ML/MH, [address]   该指令可以使寄存器和内存之间进行字节型数据传送;(M=A/B/C/D)

2. mov MX,[Address]   该指令可以使寄存器与内存之间进行字型数据传送;(M=A/B/C/D)

mOV BX,1000
mov ds,bx
mov ax,[0]   //1000:0000处的字型数据送入AX
mov [0],cx   //cx中的16位数据送到1000:0000

数据段简介

将一组长度为N(N<=64KB)  地址连续 起始地址为16的倍数的内存单元当做专门存储数据的内存空间,从而定义了一个数据段;

例如: 123B0H - 123B9H 这段内存空间当做数据段使用,取段地址为123BH,长度为10个字节;

CPU提供的栈机制

栈是一种只能在一段进行插入或删除操作的数据结构

栈有两个基本操作:

入栈: 将一个新的元素放到栈顶

出栈: 从栈顶取出一个元素

栈顶元素最后入栈,最先出栈;

8086CPU提供相关指令以栈的方式访问内存空间,这意味着,在基于8086CPU编程时,可以将一段内存当做栈来使用;

8086CPU提供入栈和出栈指令,最基本的两个是PUSH(入栈)和POP(出栈)

  • push ax 表示将寄存器AX中的数据送入栈中;
  • pop  ax 表示从栈顶取出数据送入AX;

注:入栈和出栈的操作都是以字为单位进行

栈段寄存器SS和栈顶指针寄存器SP

question: push ax等入栈指令执行时,要将寄存器中的内容放入栈顶单元的上方,成为新的栈顶元素;pop  ax等出栈指令执行时,从栈顶单元要取出数据送入寄存器当中;如何知道哪个单元是栈顶单元?

可以根据栈段寄存器SS和栈顶指针寄存器定位处栈顶单元。

栈段寄存器SS存放栈顶单元的段地址;

栈顶指针寄存器SP存放栈顶单元的偏移地址;

任意时刻,SS:SP指向栈顶元素

PUSH AX指令的完整描述

  1.  SP=SP-2, SS:SP指向当前栈顶前面的单元,以当前栈顶前面的单元为新的栈顶;
  2.  将寄存器AX 中的内容送入SS:SP指向的内存单元处,SS:SP指向新栈顶;

示例图

 POP AX指令的完整描述

  1. 将SS:SP指向的内存单元处的数据送入寄存器AX中;
  2. SP=SP+2,SS:SP指向当前栈顶下面的单元,以当前栈顶下面的单元为新的栈顶;

示例图

 栈顶超界问题

question:依靠SS 与 SP 可以保证在入栈和出栈时找到栈顶,但是如何能够保证在入栈和出栈时,栈顶不会超出栈空间?

示例一:

 示例二:

 上述示例描述了执行push,pop指令时,发生栈顶超界问题,当栈满的时候使用push命令入栈,当栈空时使用pop命令出栈,都将发生栈顶超界问题;

当编程时,要根据可能用到的最大栈空间,安排栈的大小,需要程序员自己担心栈顶超界问题;

http://www.hrbkazy.com/news/40032.html

相关文章:

  • 汽车销售服务东莞网站建设网络推广经验
  • 成都网站建设众成联邦南京网站设计公司
  • 网站设计风格分类郑州做网站公司有哪些
  • 上海网站建设平台免费的网络推广渠道
  • 网站建设的商业阶段建站seo是什么
  • 做网站数据对电脑要求百度收录查询代码
  • 自己做网站主机seo网站推广招聘
  • 新闻网站做服务2023年8月新冠又来了
  • 做网站让用seo刷新是哪个键网站推广计划方案
  • 做gif动图的素材网站建设一个网站的具体步骤
  • 北京公司网站建设报价雷神代刷网站推广
  • 网站投放广告投放方案
  • 百度全静态生成技术seo外包是什么意思
  • 买的服务器怎么做网站想做一个网站
  • wordpress侧边栏二级菜单seo的概念
  • 西安旅游网站建设竞价推广账户竞价托管
  • 平台网站开发是什么意思太原seo优化公司
  • 免费的小网站职业技能培训机构
  • 政府网站建设运行情况长春网长春关键词排名站设计
  • 宜兴网站制作百度信息流是什么
  • 苏醒的wordpress主题怎么样镇江百度关键词优化
  • 怎么制作黄色网站长沙百度推广开户
  • 做汽车介绍视频的网站百度关键词推广帝搜软件
  • 一般做音响的有哪些网站百度推广管理
  • 本地网站建设公司企业网站seo方案
  • wordpress做官网上海关键词优化的技巧
  • 淘客网站怎么做返利西安网站建设制作
  • 宋朝网站应该怎么做快速优化seo软件
  • 网站建设行业新闻广州知名网络推广公司
  • 百度网站建设基本情况推广营销企业