CTF-RE-学习记录-汇编
八进制运算
加法表
| 1+1=2 | ||||||
|---|---|---|---|---|---|---|
| 1+2=3 | 2+2=4 | |||||
| 1+3=4 | 2+3=5 | 3+3=6 | ||||
| 1+4=5 | 2+4=6 | 3+4=7 | 4+4=10 | |||
| 1+5=6 | 2+5=7 | 3+5=8 | 4+5=11 | 5+5=12 | ||
| 1+6=7 | 2+6=10 | 3+6=11 | 4+6=12 | 5+6=13 | 6+6=14 | |
| 1+7=10 | 2+7=11 | 3+7=12 | 4+7=13 | 5+7=14 | 6+7=15 | 7+7=16 |
乘法表
| 1*1=1 | ||||||
|---|---|---|---|---|---|---|
| 1*2=2 | 2*2=4 | |||||
| 1*3=3 | 2*3=6 | 3*3=11 | ||||
| 1*4=4 | 2*4=10 | 3*4=14 | 4*4=20 | |||
| 1*5=5 | 2*5=12 | 3*5=17 | 4*5=24 | 5*5=31 | ||
| 1*6=6 | 2*6=14 | 3*6=22 | 4*6=30 | 5*6=36 | 6*6=44 | |
| 1*7=7 | 2*7=16 | 3*7=25 | 4*7=34 | 5*7=43 | 6*7=52 | 7*7=61 |
十六进制表示二进制(全文背诵)
十六进制可以简写二进制
| 二进制 | 十六进制 |
|---|---|
| 0000 | 0 |
| 0001 | 1 |
| 0010 | 2 |
| 0011 | 3 |
| 0100 | 4 |
| 0101 | 5 |
| 0110 | 6 |
| 0111 | 7 |
| 1000 | 8 |
| 1001 | 9 |
| 1010 | A |
| 1011 | B |
| 1100 | C |
| 1101 | D |
| 1110 | E |
| 1111 | F |
数据宽度
计算机中常见的数据宽度
| 数据类型 | 宽度(位) | 存储范围 |
|---|---|---|
| 位(BIT) | 1 | |
| 字节(BYTE) | 8 | 0~0xFF |
| 字(Word) | 16 | 0~0xFFFF |
| 双字(DoubleWord) | 32 | 0~0xFFFFFFFF |
超出最大宽度存储的内容会被丢弃
例如char x = 0x1FF存入地址后1会被丢弃
有符号数编码规则
正数原码补码反码相同
1 -> 0 0 0 0 0 0 0 1
6 -> 0 0 0 0 0 1 1 0
负数原码反码补码编码规则
原码:最高位为符号位,其余各位为数值本身的绝对值
反码:
- 正数:反码与原码相同
- 负数:符号位为1,其余位对原码取反
补码
正数:补码与源码相同
负数:符号位为1,其余位对原码取反加1
-1
1 0 0 0 0 0 0 1__原码__
1 1 1 1 1 1 1 0__反码__
1 1 1 1 1 1 1 1__补码__
-7
1 0 0 0 0 1 1 1
1 1 1 1 1 0 0 0
1 1 1 1 1 0 0 1
4+5=?的运算过程
异或
0000 0100 XOR 0000 0101 = 0000 0001
判断是否有进位
0000 0100 & 0000 0101=0000 0100
&运算后,全0则无进位,有1则在1所在位数+1的位数进1,此处&运算后值不为0
继续异或
0000 0001 XOR 0000 1000 = 0000 1001
判断是否有进位
0000 0001 & 0000 1000 = 0000 0000
4-5=?的运算过程
4-5=4+(-5)
异或
0000 0100 XOR 1111 1011 = 1111 1111
判断是否有进位
0000 0100 & 1111 1011 = 0000 0000
故结果为1111 1111=FF=-1
CTF-RE-学习记录-汇编的更多相关文章
- Java 静态内部类与非静态内部类 学习记录.
目的 为什么会有这篇文章呢,是因为我在学习各种框架的时候发现很多框架都用到了这些内部类的小技巧,虽然我平时写代码的时候基本不用,但是看别人代码的话至少要了解基本知识吧,另外到底内部类应该应用在哪些场合 ...
- Quartz 学习记录1
原因 公司有一些批量定时任务可能需要在夜间执行,用的是quartz和spring batch两个框架.quartz是个定时任务框架,spring batch是个批处理框架. 虽然我自己的小玩意儿平时不 ...
- Apache Shiro 学习记录4
今天看了教程的第三章...是关于授权的......和以前一样.....自己也研究了下....我觉得看那篇教程怎么说呢.....总体上是为数不多的精品教程了吧....但是有些地方确实是讲的太少了.... ...
- UWP学习记录12-应用到应用的通信
UWP学习记录12-应用到应用的通信 1.应用间通信 “共享”合约是用户可以在应用之间快速交换数据的一种方式. 例如,用户可能希望使用社交网络应用与其好友共享网页,或者将链接保存在笔记应用中以供日后参 ...
- UWP学习记录11-设计和UI
UWP学习记录11-设计和UI 1.输入和设备 通用 Windows 平台 (UWP) 中的用户交互组合了输入和输出源(例如鼠标.键盘.笔.触摸.触摸板.语音.Cortana.控制器.手势.注视等)以 ...
- UWP学习记录10-设计和UI之控件和模式7
UWP学习记录10-设计和UI之控件和模式7 1.导航控件 Hub,中心控件,利用它你可以将应用内容整理到不同但又相关的区域或类别中. 中心的各个区域可按首选顺序遍历,并且可用作更具体体验的起始点. ...
- UWP学习记录9-设计和UI之控件和模式6
UWP学习记录9-设计和UI之控件和模式6 1.图形和墨迹 InkCanvas是接收和显示墨迹笔划的控件,是新增的比较复杂的控件,这里先不深入. 而形状(Shape)则是可以显示的各种保留模式图形对象 ...
- UWP学习记录8-设计和UI之控件和模式5
UWP学习记录8-设计和UI之控件和模式5 1.日历.日期和时间控件 日期和时间控件提供了标准的本地化方法,可供用户在应用中查看并设置日期和时间值. 有四个日期和时间控件可供选择,选择的依据如下: 日 ...
- UWP学习记录7-设计和UI之控件和模式4
UWP学习记录7-设计和UI之控件和模式4 1.翻转视图 使用翻转视图浏览集合中的图像或其他项目(例如相册中的照片或产品详细信息页中的项目),一次显示一个项目. 对于触摸设备,轻扫某个项将在整个集合中 ...
- UWP学习记录6-设计和UI之控件和模式3
UWP学习记录6-设计和UI之控件和模式3 1.按钮 按钮,响应用户输入和引发 Click 事件的控件. 使用<Button>就能创建一个按钮控件了.按钮是 ContentControl, ...
随机推荐
- mysql之数据表基本操作-第四篇
在关系型数据库中,数据表是一系列二维数组的集合,用来存储数据和操作数据的逻辑结构. 1.创建表,以创建一个简单的员工表为例: create table employee ( empId INT(11) ...
- el-table 固定列错位问题
1. 问题描述:el-table使用固定列时,使用keep-alive后页面切换导致该列错位. 2. 解决方法:使用el-table的doLayout方法对表格进行重新布局 activated() { ...
- Date 对象 定时器
日期对象 Date 概述:date是表示日期时间的对象,主要的方法是获取时间和设置日期时间. date声明 使用new Date声明 有4种方式 1.不设参数 是获取当前的本地时间 var date ...
- 【python】第一模块 步骤四 第二课、实现飞机大战(未完待续)
第二课.实现飞机大战 一.项目介绍 项目实战:飞机大战 课程目标 掌握面向对象分析和开发的思想 能对项目进行拆分,进行模块化开发 了解项目开发的基本流程 理解并运用python的包.模块相关知识 理解 ...
- JS笔记(三):函数与对象
镇楼图 Pixiv:torino 四.Function类型 Rest语法 一些函数如Math.max可以支持任意数量的参数,JS中对于这样的参数可以简单使用...来实现,使用剩余参数,它支持收集剩余的 ...
- 通过富文本编辑器操作HTML页面
<pre id="list_css" class="brush:css;toolbar:false">/*外部css,多个换行*/ https:// ...
- HarmonyOS_Text_Image
Text组件 ohos:属性 id="$+id:text_helloworld" #在程序中控制,需要id="$+id:name",转回MainAbilityS ...
- MySQL Workbench常用快捷键及修改方法
常用快捷键: 1. 执行整篇sql脚本:Ctrl + Shift + Enter 2. 执行当前行:Ctrl + Enter 3. 注释/取消注释: Ctrl + / 4. 格式化sql语句(美化sq ...
- ansible介绍与简单的使用
在roles下建立site.yml文件#site.yml - hosts: webservers remote_user: root roles: - websrvs - dbsrvs#将文件拷贝到f ...
- vue中小写数字转大写汉字
numTocoggle(money){ //汉字的数字 var cnNums = new Array('零', '壹', '贰', '叁', '肆', '伍', '陆', '柒', '捌', '玖') ...