正则表达式
0x01 测试学习网站用这个在线网站来测试正则表达式的使用,传送门
网站还是很方便学习的,随便粘贴一段文本,选择语言风格就可以开始测试了,这里用PHP测试。
0x02 限定符Quantifiers?限定符代表前面的一个字符需要在表达式中出现0次或1次,也就是改字符在匹配中可有可无。
比如 used?能够匹配到used use
*限定符代表前面的一个字符可以在表达式中出现任意次,也可以不出现,但不能是其他字符
比如 ab*c 可以匹配到ac abbbc abbbbbc,无法匹配 adc
+限定符和*一样,但是只会匹配出现一次及以上的。
{}限定符允许在花括号内写上严格的限定出现次数,{2,6}匹配出现2到6次,{6}匹配出现6次,
{2,}则是匹配大于或者等于2次出现的字符。
多个字符的情况如果要同时对多个连续的字符使用限定符,可以先把这些字符用小括号括起来。
0x03 “或”运算可以用|来使用字符匹配的或
例如a (cat|dog)则是先匹配a加上空格,后面匹配cat或者dog都可以。
0x04 ...
GDB调试命令
0x01 GDB调试命令这是从csapp里摘抄下来的,基础调试命令。
虽然说这些命令大部分都可以简写,但还是建议先习惯写完整,还能方便理解每一步操作的具体实现。
深圳大学LC3实验2源码
实验二 机器码编程实验源代码LC3汇编
12345678910111213141516.ORIG x3000 ;将x3000作为程序起始位置LD R2 xFF ;读取x3100处的值存入R2AND R1 R1 #0 ;R1初始化为0AND R0 R0 #0 ;R0初始化为0,'1'计数器ADD R1 R1 15 ;循环计数器LOOP AND R2 R2 R2 ;读取R2符号位BRZP x1ADD R0 R0 #1 ;若符号位为1计数器加1ADD R2 R2 R2 ;R2左移一位ADD R1 R1 #-1 ;循环计数器-1BRZP LOOPST R0 xF6HALT.END
LC3机器码
1234567891011121300110000000000000010010011111111010100100110000001010000001000000001001001101111010101001000001000000110000000010001000000100001000101001000001000010010011 ...
深圳大学LC3实验1
实验目的与要求实验目的:
(1)掌握处理器仿真工具LC-3软件的安装和使用方法。
(2)学会在LC-3仿真环境下编辑程序和转换成可执行目标程序的方法 。
(2)学会在LC-3仿真环境下运行和调试程序的方法 。
实验要求:
(1)安装LC-3仿真器
(2)利用LC3EDIT输入机器代码程序(0/1模式)并创建创建可执行目标程序。
(3)利用LC3EDIT输入机器代码程序(hex模式)并创建创建可执行目标程序。
(4)利用LC3EDIT输入汇编代码程序并创建创建可执行目标程序。
(5)利用仿真器运用对应目标程序。
(6)学习和掌握断点,单步执行等调试方法和手段。
实验内容 LC3WinGuide:
通过chapter1-3学习和掌握仿真器的使用。
完成chapter4: P15 example1
P20 example2
实验过程与步骤0x01 安装LC-3仿真器运行”仿真器” 目录下的LC301.exe文件,点击unzip即可
0x02 输入机器or汇编代码编译程序输入一段01二进制程序,然后选 ...
adb工具配置和使用
0x01 下载安装与环境变量配置介绍adb全称全称为Android Debug Bridge(安卓调试桥),它可以与设备进行通信,实现操作管理Android设备
作用1、通过电脑的命令行使用adb,对安卓设备进行操作
2、比如可以在设备上安装或卸载应用
3、可以获取设备的基本信息等
来源1、adb 是Android SDK Platform-Tools中的一个工具,而Android SDK Platform-Tools是Android SDK的一个组件
2、对于安卓开发人员来说,在安装IDE (Android Studio)时或是android SDK时就已经带有这个工具
3、而对于非开发人员,也可以通过直接下载adb安装包的方式安装
下载地址SDK Platform-Tools下载地址
配置环境变量下载解压后将adb所在的地址添加到系统里的环境变量,然后再cmd命令行输入adb,若有adb的信息出现说明配置成功。
0x02 通过adb连接安卓设备adb的工作原理adb 提供对 Unix shell(可用来在设备上运行各种命令)的访问权限。它是一种客户端-服务器程序,包括以下三个组件: ...
emplace_back()
emplace_back( )在容器末尾添加一个新元素,它通常使用 placement-new 在容器提供的位置就地构造元素。
通常要保证操作后的size不大于旧的capacity(end迭代器要重新生成),否则需要重新分配内存,这种情况下所有迭代器和对元素的所有引用都会失效。
下面代码是从cpp reference抄来的,理解一下怎么运行的。
12345678910111213141516171819202122232425262728293031323334353637383940414243444546#include <vector>#include <cassert>#include <iostream>#include <string> struct President{ std::string name; std::string country; int year; President(std::string p_name, std::string p_country, int p_yea ...