这里先讲一下nRF52的启动流程:上电后,系统先执行softdevice,softdevice通过读取UICR一个寄存器的值,来判断目前系统是否有BootLoader,如果没有BootLoader,系统直接跳到application;如果有BootLoader,系统先跳到BootLoader,Boo ...
分类:
其他好文 时间:
2020-04-03 16:32:18
阅读次数:
187
小编最近学习汇编语言,特此记录一下。(8086CPU) 注意事项: * 首先记录一下,al为8位寄存器。当我们命令当中调用 AL时,CPU会默认为8位寄存器,他和AX是相互独立的两个寄存器。即产生的仅为不会存到AH里面去。 * 设定段寄存器的伪指令。汇编时,系统自动将代码段的段地址送到CS,到那时如 ...
分类:
编程语言 时间:
2020-04-01 23:31:22
阅读次数:
234
虚拟机栈的背景 由于跨平台性的设计,java的指令都是根据栈来设计的。不同平台CPU架构不同,所以不能设计为基于寄存器的。 优点是跨平台,指令集小,编译器容易实现,缺点是性能下降,实现同样的功能需要更多的指令。 内存中的堆与栈 栈是运行时的单位,而堆是存储的单位1.栈解决程序的运行问题,即程序如何执 ...
分类:
编程语言 时间:
2020-04-01 21:00:34
阅读次数:
103
JVM中的程序计数寄存器(Program Counter Register)中,Register的命名源于CPU的寄存器,寄存器存储指令相关的现场信息。CPU只有把数据装载到寄存器才能够运行。JVM中的PC寄存器是对物理PC寄存器的一种抽象模拟。 一个线程对应一个 JVM Stack。JVM Sta ...
分类:
其他好文 时间:
2020-04-01 19:09:35
阅读次数:
59
STM32入门系列-使用C语言封装寄存器 具体实例:控制 GPIOC 端口的第 0 管脚输出一个低电平。首先我们需要知道GPIOC 端口外设是挂接在哪个总线上的,然后根据总线基地址和本身的偏移地址得到 GPIOC 外设基地址,最后通过这个外设基地址得到里面各种寄存器基地址。 总线和外设基地址封装 根 ...
分类:
编程语言 时间:
2020-04-01 11:05:22
阅读次数:
159
Shellcode 定义 是一段可注入的指令(opcode),可以在被攻击的程序内运行。 特点 短小精悍,灵活多变,独立存在,无需任何文件格式的包装,因为shellcode直接操作寄存器和函数,所以opcode必须是16进制形式。因此也不能用高级语言编写shellcode。在内存中运行,无需运行在固 ...
8086标志寄存器介绍 前面已经介绍了8086大多数的寄存器,现在介绍一种8086内部一个特殊的寄存器,标志寄存器(flag register)。 8086标志寄存器大致有以下作用: 1.存储一些相关指令的执行结果 2.为CPU执行相关指令提供依据 3.控制CPU的部分工作方式 8086的寄存器是1 ...
分类:
编程语言 时间:
2020-03-31 23:16:13
阅读次数:
178
一、要求 二、上机调试 1.debug调试开始,首先查看反编译后的汇编代码(假设ob38就是段地址1000) 2.执行第一条指令mov ax,6 3.执行第二条指令call ax,也就是call 6(我们知道,对于call 16位reg格式来说,相当于push ip;jmp 16位reg。) 执行了 ...
分类:
其他好文 时间:
2020-03-31 14:53:03
阅读次数:
101
计算机操作系统的演变过程ENIARCcup:运算器、控制器、寄存器、缓存(一级缓存、二级缓存、三级缓存)存储器:内存RAM(RandomAccessMemory)Input:下达指令,提供数据等;output:输出数据加工的结果;程序:数据+指令组成;或者算法+数据结构组成。cup中存在指令集:1.普通指令;2.特权指令cell:8bits(8位二进制数)Bytes一个操作系统的具体结构由于一开始
分类:
系统相关 时间:
2020-03-30 21:43:48
阅读次数:
107
存储器在CPU外,一般指硬盘,U盘等可以在切断电源后保存资料的设备,容量一般比较大,缺点是读写速度都很慢,普通的机械硬盘读写速度一般是50MB/S左右。 内存和寄存器就是为了解决存储器读写速度慢而产生的多级存储机制,从20世纪50年代开始,磁芯存储器曾一度成为主存的主要存储介质,但从20世纪70年代 ...
分类:
其他好文 时间:
2020-03-29 16:34:47
阅读次数:
296