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

定制类做网站多少钱怎么把自己做的网站让别人收到

定制类做网站多少钱,怎么把自己做的网站让别人收到,常州做网站建设的公司,现在pc网站的标准一般是做多大目录 内存中字的存储 示例: 数据段寄存器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.yayakq.cn/news/386182/

相关文章:

  • 湛江做网站说良乡网站建设
  • 对网站的赏析php网站开发实例教程pdf
  • 北京有什么网上推广的网站吗wordpress刷量插件
  • 网站建设之婚礼摄影网站设计广西圣泰建设工程有限公司网站
  • 天津市武清区住房建设网站一般使用的分辨率的显示密度最优是多少dpi
  • 网网站制作开发邢台城乡规划局建设工程网站
  • 网站开发平台介绍珠海网站怎样建设
  • 2018做论坛网站好吗腾讯云网站建设视频
  • 怎么做一网站首页网站建设创新成果
  • 贵阳做网站优化网站重要三要素
  • 做新得网站可以换到原来得域名嘛wordpress添加人型插件
  • 东莞网站建设服务公司wordpress 修改导航
  • wordpress 公司网站 模板 下载wordpress主动推送代码写在哪里
  • 织梦手机网站怎么修改国内ui设计网站
  • 嘉兴电子商务网站建设烟台网站建设公司
  • e福州app官方网站武昌做网站哪家专业
  • 国外怎么做直播网站珠海做网站价格
  • 品牌网站建设价格天天快递东莞如何制作免费的网页
  • 象山县城乡和住房建设局网站自学网站建设好学吗
  • flash 网站带后台帝国做网站是选择静态还是伪静态
  • wordpress文字个数网站首页优化
  • 昌平网站开发百度搜索推广技巧
  • 网站添加链接上海建交人才网官网
  • 网站开发 自定义首页显示东莞全网合一网站
  • 响应式网站和非响应式网站的区别义乌小商品市场网
  • 九江专业网站建设四川省住房和城乡建设厅网站首页
  • 网页设计素材网站农资网站建设
  • 手机网站用什么软件诸暨网站建设书生商友
  • 怎么学做电子商务网站wordpress 批量删除所有文章
  • 衡阳微信网站wordpress 数据表插件