
Architecture
Rraion
Kafen Wong
展开
-
位操作和一些问题
移位(shift)针对无符号数,一般使用逻辑移位,空位补0针对有符号数,一般使用算数移位,空位补符号位请添加图片描述MaskMask可以实现对某一个或者某几个特定位的设置,比如复位,置位,翻转,检验等...原创 2022-02-24 08:35:56 · 97 阅读 · 0 评论 -
ARM命令
MOV语法 MOV{条件}{S} 目的寄存器,源操作数MOV r0, #0x1 ;将立即数0x1传送到寄存器R0MOV R1,R0 ;将寄存器R0的值传送到寄存器R1MOV PC,R14 ;将寄存器R14的值传送到PC,常用于子程序返回MOV R1,R0,LSL #3 ;将寄存器R0的值左移3位后传送到R1立即数立即数是由 0-255之间的数据循环右移偶数位生成移位逻辑移位(LSL/LSR)空位补0算数移位(ASL/ASR)符号位不变,次高位补符号位循环移位带拓展的循环移位原创 2022-02-21 13:34:29 · 850 阅读 · 0 评论 -
计算机架构
信息的量化(等概率情况下)把N种等概率的选择变成了M种等概率的选择,就是提供了log2(NM)\log_2(\frac{N}{M})log2(MN)的信息信息的量化(不等概率情况下)信息=∑pilog21pi\sum p_i \log_2{\frac{1}{p_i}}∑pilog2pi1定长编码因为log210=3.322<4\log_210=3.322<4log210=3.322<4所以表示10个字符,至少需要4个bit因为log286=6.426&原创 2022-02-19 22:31:29 · 160 阅读 · 0 评论 -
ARM指令和其他
ARM指令(1-6)栈初始化LDR和STR寻址异常以及异常处理中断和软中断原创 2022-02-19 13:58:12 · 74 阅读 · 0 评论 -
ARM寄存器(cortex-A),协处理器和流水线
cortex-A有40个32位寄存器,33是通用寄存器,7个是状态寄存器寄存器描述未分组寄存器R0-R7分组寄存器R8-R14程序寄存器PCR15程序状态保存寄存器SPSR未分组寄存器分组寄存器堆栈指针R13(SP)链接寄存器R14(LR)程序寄存器R15(PC)CPSR 当前程序状态寄存器可以在任何运行模式下被访问SPSR 备份的程序状态寄存器当异常发生时,SPSR用于保存CPSR的当前值,从异常退出时则可由SPSR来恢复CPSR..原创 2022-02-19 13:54:57 · 920 阅读 · 0 评论 -
Architecture(X):使用MDK写汇编
新建工程原创 2022-01-25 15:23:44 · 159 阅读 · 0 评论 -
Architecture(X):ARM指令集体系结构
寄存器集指令集伪指令数据处理加减法取负比较乘法除法位操作移位流控制无条件分支条件分支测试和比较分支与循环结构条件执行寻址立即数寻址寄存器间接寻址含有偏移的寄存器间接寻址自动前索引寻址方式自动后索引寻址方式程序寄存器相对寻址子程序数据组织其他...原创 2022-01-25 15:17:55 · 156 阅读 · 0 评论 -
Architecture(X):指令
假设的计算机三种指令格式LDR [寄存器目的][存储单元源]STR[寄存器源][存储单元目的]Operation [寄存器目的][寄存器源1][寄存器源2]指令解析LDR把数据从储存器复制到寄存器(Load)STR把数据从寄存器复制到储存器(Store)Operation 指令是三操作数,是RISC处理器的典型指令格式,和CISC的两操作数指令格式完全不同,比如ADD r1,r2,r3表示将r2和r3的内容相加,储存到r1读取指令的流程ISA(指令集架构)的组成寄存器集寻址方原创 2022-01-25 15:06:20 · 395 阅读 · 0 评论 -
Architecture(X):寄存器
寄存器的功能高速暂存:用于保存数据或者指针特殊功能:记录循环次数记录状态寄存器命名ARM:r0,r1,…r15Intel:AX,BX,SP,SI…freesacle:D0,D1…D7原创 2022-01-25 14:38:13 · 413 阅读 · 0 评论 -
Architecture(X):哈弗架构和冯诺依曼架构
哈弗结构冯诺依曼结构程序和数据在不同的内存中,彼此完全分离程序和数据都在内存中,彼此不分离程序和数据混着放程序和数据分开放MCS51,ARM9Intel原创 2022-01-25 14:18:58 · 1789 阅读 · 0 评论