存储器

ARM汇编指令集

亡梦爱人 提交于 2019-11-29 12:19:22
跳转指令 B BL会把当前PC指针的值加4保存到R14里。 MOV{条件}{S} 目的寄存器 ,源操作数 只能用在通用寄存器的操作 MOV R1,R0 将寄存器R0的值传送到R1里 MVN{条件}{S} 目的寄存器 ,源操作数 在传送之前按位取反,即把一个被取反的值传送到目的 寄存器中。 S决定指令操作是否影响CPSR中条件标志位的值,没有S 时指令不更新CPSR中条件标志位的值。 CMP{条件}操作数1,操作数2 把两个操作数进行比较,同时更新CPSR中条件标志位的值 该指令进行一次减法运算,不存储结果,只更改条件标志位 TST{条件 }操作数1,操作数2 把一个寄存器的内容和另一个寄存器的内存或立即数进行按位与运算,并 更新CPSR中条件标志位的值,当位与结果为0时,EQ位被设置。 TST R5,#(1<<23) ;当bit23位为1时,CPSR EQ位被设置 ADD{条件}{S}目的寄存器,操作数1,操作数2 将两个操作数相加,把结果放在目的寄存器中。 ;ADD指令 MOV R1,#1 MOV R2,#2 MOV R3,#3 ADD R0,R1,R2 ;R0=R1+R2 ADD R0,R1,#256 ;R0=R1+256 ADD R0,R2,R3,LSL#1 ;R0=R2+(R3<<1) SUB{条件}{S}目的寄存器,操作数1,操作数2 用操作数1减操作数2

软件实现

…衆ロ難τιáo~ 提交于 2019-11-29 08:22:20
通常把编码和测试统称为实现 所谓编码就是把软件设计结果翻译成用某种程序设计语言书写的程序。作为软件工程过程的一个阶段,编码是对设计的进一步具体化,因此,程序的质量主要取决于软件设计的质量。但是,所选用的程序设计语言的特点及编码风格也将对程序的可靠性、可读性、可测试性和可维护性产生深远的影响。 无论怎样强调软件测试的重要性和它对软件可靠性的影响都不过分。在开发大型软件系统的漫长过程中,面对着极其错综复杂的问题,人的主观认识不可能完全符合客观现实,与工程密切相关的各类人员之间的通信和配合也不可能完美无缺,因此,在软件生命周期的每个阶段都不可避免地会产生差错,人们力求在每个阶段结東之前通过严格的技术审查,尽可能早地发现并纠正差错;但是,经验表明审查并不能发现所有差错,此外在编码过程中还不可避免地会引入新的错误。如果在软件投入生产性运行之前,没有发现并纠正软件中的大部分差错,则这些差错迟早会在生产过程中暴露出来,那时不仅改正这些错误的代价更高,而且往往会造成很恶劣的后果。测试的目的就是在软件投入生产性运行之前,尽可能多地发现软件中的错误。目前软件测试仍然是保证软件质量的关键步骤,它是对软件规格说明、设计和编码的最后复审。 软件测试在软件生命周期中横跨两个阶段。通常在编写出每个模块之后就对它做必要的测述(称为单元测试),模块的编写者和测试者是同个人,编码和单元测试属于软件生命周期的同一个阶段

存储器的按字寻址和按字节寻址

一世执手 提交于 2019-11-29 00:51:52
学习计算机组成的时候遇到了存储器按字寻址和按字节寻址的问题,当时也是有些闷,最后发现了一篇比较好的文章不过,可能是输入法的问题写的时候数据有些问题,但是对理解还是很有帮助的推荐看一下 https://www.cnblogs.com/sunshine88/p/8850254.html 。注意MW中的W是word(字长)的缩写,那么字长就是跟计算机本身有关,多少字长就有多少数据线。 来源: https://www.cnblogs.com/wyx66688/p/11437399.html

VMware vSphere虚拟化-VMware ESXi 5.5组件添加本地磁盘--虚拟机扩容

北慕城南 提交于 2019-11-29 00:37:18
本地存储器可以是位于ESXi主机内部的内部硬盘,也可以是位于主机之外并直接通过SAS或者SATA等协议连接在主机上的外部存储系统。本地存储不需要存储网络即可与主机进行通信,只需要一根连接到存储单元的电缆。必要时,主机中需要有一个兼容的HBA。 在ESXi下,放置VM的空间都称为datastore,不管是本地磁盘还是独立设备,在安装ESXi服务器时已经默认创建。所有在安装VM之前,必须有datastore,当我们使用一块本地硬盘置放虚拟机时,它的数据量会随着时间的变化而越来越大,在虚拟机增多的情况下,一块硬盘运行起来会十分吃力,将大大降低虚拟机的效率。所以,如果生产环境中只有一台ESXi服务器时,我们就会考虑使用多块硬盘或者raid卡等。 步骤一: 添加本地磁盘 我们将一块新的硬盘插入ESXi服务器,现在的服务器都支持硬盘的热插拔,所有在添加硬盘设备时,可以直接将硬盘插入服务器中。 1、 在ESXi(10.128.114.74)上,依次单击“配置”》“数据存储”,查看数据设备,可以看到里面有一个datastore1,这是在安装ESXi服务器时默认创建的。单击右上角的“添加存储器”按钮,如图: 2、在“选择存储器类型”界面上,选择存储类型,存储适配器为ESXi主机提供到特定存储单元或者网络的连接。ESXi支持不同的适配器类别,包括SCSI、IDE、SATA、USB和SAS存储系统

单片机期末复习

安稳与你 提交于 2019-11-28 23:34:57
一、硬件结构 1.1部分引脚说明 RST:复位引脚,两个机器周期的高电平后复位 ALE:锁存低八位地址 EA:高电平时,访问内部程序存储器(ROM) P0:双向IO口、分时复用-低八位地址,数据总线 P1:双向IO口 P2:双向IO口,访问外部存储器时,提供高八位地址总线 P3:双向IO口,有第二功能 1.2存储器 物理上分为:4 个空间 即片内ROM、 、 片外ROM(程序存储器) 片内RAM、 、 片外RAM(数据存储器) 逻辑上分为: : 3 个空间 , 程序内存(ROM) ( 片内 、 外 ) 统一编址 MOVC 数据存储器 ( 片内) ) MOV 数据存储器(片外) MOVX 1.2.1程序存储器(ROM 作用:存储用户程序和表格常数 特殊单元: 0000H:复位后从这里开始执行程序 中断单元: 外中断0 (INT0 ) 0003H 定时器0 (T0 ) 000BH 外中断1 (INT1 ) 0013H 定时器1 (T1 ) 001BH 串行口(UART ) 0023H 1.2.2内部数据存储器(RAM 通用工作寄存器组 00~1FH共32个,四组通用寄存器,即(四组R0~R7) 可以使用RS1(PSW.4)RS0(PSW.3)来切换寄存器区 RS1 RS0 寄存器区 内存地址 00 0区 00-07H 01 1区 08-0FH 10 2区 10-17H 11 3区 18

ROM、RAM、FLASH的区别

这一生的挚爱 提交于 2019-11-28 20:59:05
初学MCU的人,经常会看到ROM, RAM, FLASH,而且会被这些词汇搞得晕头转向。本文对这些概念进行了厘清,并介绍了这些Memory的区别,以及它们在MCU中的作用。 ROM (Read Only Memory)程序存储器 ROM全称Read Only Memory,顾名思义,它是一种只能读出事先所存的数据的固态半导体存储器。ROM中所存数据稳定,一旦存储数据就再也无法将之改变或者删除,断电后所存数据也不会消失。其结构简单,因而常用于存储各种固化程序和数据。 在单片机中用来存储程序数据及常量数据或变量数据,凡是c文件及h文件中所有代码、全局变量、局部变量、‘const’限定符定义的常量数据、startup.asm文件中的代码(类似ARM中的bootloader或者X86中的BIOS,一些低端的单片机是没有这个的)通通都存储在ROM中。 为了便于使用和大批量生产,进一步发展出了可编程只读存储器(PROM)、可擦除可编程只读存储器(EPROM)。EPROM需要用紫外线长时间照射才能擦除,使用很不方便。1980s又出现了电可擦除可编程只读存储器(EEPROM),它克服了EPROM的不足,但是集成度不高、价格较贵。于是又发展出了一种新型的存储单元结构同EPROM类似的快闪存储器(FLASH MEMORY)。FLASH集成度高、功耗低、体积小,又能在线快速擦除,因而获得了快速发展。

汇编笔记_基础篇

时光怂恿深爱的人放手 提交于 2019-11-28 20:43:23
1 总线 内部总线:实现CPU内部各器件(运算器、控制器、寄存器等)之间的联系。 总线(外部总线):实现CPU和主板上其他器件的联系。 地址总线 CPU通过地址总线指定存储器单元。 一个CPU有N根地址线,则这个CPU的地址总线的宽度为N,这个CPU最多可以寻找2的N次方个内存单元(字节)。 控制总线 控制总线决定CPU对外部器件的控制能力。 有多少根控制总线,就意味着CPU提供了对外部器件的多少种控制。 数据总线 CPU与内存或其他器件之间的数据传递。 数据总线的宽度决定了CPU和外界的数据传输的速度。N根数据总线,一次可传送N位二进制数据(即N个bit)。 2 存储器 随机存储器(RAM):可读可写,断电数据丢失。 只读存储器(ROM):只读,断电数据不丢失。 3 内存地址空间 CPU对各类存储器均看做是一个逻辑存储器,每个物理上的存储器在逻辑上占有一段地址空间,CPU对其段进行操作,就是对物理存储进行操作。 来源: https://www.cnblogs.com/chungeyuan/p/11427161.html

计算机如何执行一条机器指令

一曲冷凌霜 提交于 2019-11-28 15:36:42
文章目录 指令运行过程: 微程序控制基本概念: 几个周期区别 寻址方式: 指令运行过程:  在 上篇 我们谈到,计算机处理一段程序,就会将程序翻译成机器指令,然后执行完成相应的任务。执行指令的过程分为取指令阶段、分析取数阶段和执行阶段。 1.取指阶段: 图中概念解释: PC(程序计数器),MAR(存储地址寄存器),CU(控制单元),IR(指令寄存器) AB(地址总线) ,DB(数据总线), CB(控制总线)。 取指令阶段完成的任务是将现行指令从主存中取出来并送至指令寄存器中去,具体的操作如下: ① 将程序计数器(PC)中的内容先送至存储器地址寄存器(MAR),然后送至地址总线(AB). ② 由控制单元(CU)经控制总线(CB)向存储器发读命令. ③ 从主存中取出的指令通过数据总线(DB)送到存储器数据寄存器(MDR). ④ 将MDR的内容送至指令寄存器(IR)中. ⑤ 将PC的内容递增,为取下一条指令做好准备. 2.分析取数阶段: 取出指令后,指令译码器(ID)可识别和区分出不同的指令类型.此时计算机进入分析取数阶段,以获取操作数.由于各条指令功能不同,寻址方式也不同,所以分析取数阶段的操作是各不相同的. 对于无操作数指令,直接进入执行阶段。 取数要计算操作数有效地址。对于不同的寻址方式,有效地址的计算方法是不同的,有时需要多次访问主存才能取出操作数(间接寻址)。如果通用寄存器中有

存储系统

好久不见. 提交于 2019-11-28 13:13:01
存储系统 基本概念 功能:存储二进制信息 分类 作用: 高速缓存存储器(cache),使用SRAM 主存储器(主存,内存),使用DRAM和ROM 辅助存储器(辅存,外存) 存储介质 磁表面存储器:磁盘,磁带:顺序存储 磁芯存储器: 半导体存储器:ROM,RAM 随机存储 光盘存储器:激光,磁光材料 存取方式 随机存储器 RAM:DRAM,SRAM 在程序执行过程中可读可写 只读存储器 ROM 在程序执行过程中只读 串行访问存储器 顺序存取:磁带 直接存取:磁盘 信息可保存性 断电后存储信息消失 易失性:RAM 非易失性:ROM 读出时是否破坏信息 破坏性读出:DRAM 非破坏性读出:SDRAM 性能指标 存储容量:存储字数 X 字长 (如1M X 8位) 单位成本:每位价格=总成本/总容量 存储带宽 存储速度:数据传输速率=数据的宽度/存储周期 存储周期:存储时间和恢复时间,它是指存储器进行一次完整的读写操作所需要的全部时间,即连续两次独立访问存储器操作之间所需要的最小时间间隔 存储器的层次结构 CPU -- Cache -- 主存 -- 辅存 Cache-主存层次:解决CPU与主存速度不匹配的问题 主存-辅存层次:解决大容量的问题和数据的长期存储 虚拟存储系统 半导体存储器 存储芯片的基本结构 组成: 存储矩阵:由大量相同的位存储单元阵列构成 译码驱动

2.5 习题

你离开我真会死。 提交于 2019-11-28 11:21:37
题2.1 8086/8088 通用寄存器的通用性表现在何处?8个通用寄存器各自有何专门的用途?哪些寄存器可作为存储器寻址方式的指针寄存器? 答:8086、8088通用寄存器既可用存储数据,也可用于存放运算的中间值、运算结果。8个通用寄存器的专门用途如下:   AX:字乘法、字除法、字I/O、累加器   AL:字节乘法、字节除法、字节I/0、十进制算术运算   AH:字节乘法、字节除法   BX: 存储器指针   CX:串操作、循环控制中的计数器   CL: 移位计数器   DX:字乘法、字除法、间接I/0   SI: 存储器指针(串操作源指针)   DI:存储器指针(串操作目的指针)   BP:存储器指针(默认为堆栈段)   SP:指令指针 可作为存储器寻址方式指针寄存器为:BX、SI、DI、BP 题2.2 从程序员的角度看,8086/8088有多少个可访问的16位寄存器?有多少个可访问的8位寄存器? 答:AX,BX,CX,DX,SI,DI,BP,SP,DS,CS,ES,SS,IP,FLAG。共14个16位寄存器。AH,AL,BH,BL,CH,CL,DH,DL共8个8位寄存器。 题2.3 寄存器AX与寄存器AH和AL的关系如何?请写出如下程序片段中每条指令执行后寄存器AX的内容: MOV AX,1234H AX=1234H MOV AL,98H    AX=1298H MOV AH