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, ...
随机推荐
- 【python】第一模块 步骤五 第二课、Python多线程
第二课.Python多线程 一.课程介绍 1.1 课程概要 章节概要 进程.线程与并发 对多核的利用 实现一个线程 线程之间的通信 线程的调度和优化 1.2 为什么要学习多线程 (线程)使用场景 快速 ...
- node后台项目所需中间件梳理
0.nodemon 全局工具,监听项目文件变动,并自动重启项目 一.node内置模块 1.fs fs.readFile() 读取指定文件中的内容fs.writeFile() 向指定的文件中写入内容 ...
- lgb文档学习
1.L1和l2损失是什么意思? 相较于MSE,MAE有个优点,那就是MAE对离群值不那么敏感,可以更好地拟合线性,因为MAE计算的是误差y−f(x)的绝对值,对于任意大小的差值,其惩罚都是固定的. 2 ...
- JavaWeb学习--EL表达式
一.EL表达式: 1.命令表达式: ${作用域对象别名.共享数据} 2.命令作用: 1)EL表达式是EL工具包提供一种特殊命令格式[表达式命令格式] 2)EL表达式在JSP文件上使用 3)负责在JSP ...
- MySQLdb._exceptions.OperationalError: (2026, 'SSL connection error: unknown error number')
MySQLdb._exceptions.OperationalError: (2026, 'SSL connection error: unknown error number') 问题发生在我远程连 ...
- IT工具知识-12:RTL8832AU网卡在WIN10更新KB5015807后出现无法正常连接的一种解决方法
系统配置 硬件配置 使用网卡为Fenvi的FU-AX1800 USB外置网卡(官网驱动同AX1800P) 问题描述 在win10自动更新了KB5015807出现了wifi开机无法自动连接,wifi图标 ...
- [C#] Func及Action的快速Demo
参考代码1: using System;using System.Collections.Generic;using System.Linq;namespace FuncActionDemo{ ...
- Hyperkernel验证实验的复现与z3环境初识
Hyperkernel验证实验的复现与z3环境初识 前言 建议顺序阅读本文!禁止转载.--@CarpVexing(https://www.cnblogs.com/CarpVexing/p/159483 ...
- install package within python
import os os.system("pip install numpy") import subprocess subprocess.call(['pip3', 'insta ...
- 【Linux】虚拟机CentOS 7 磁盘扩容
[Linux]虚拟机CentOS 7 磁盘扩容 在有些时候,自己或者公司开的虚拟机的磁盘在一开始的时候没规划好,或者有磁盘扩容的需求(其实在系统日常运维的时候这个需求时常出现),那么这个时候又该怎么处 ...