汇编语言与逆向技术基础 五、过程
汇编语言与逆向技术基础 五、过程 本章知识点 OllyDbg简介 JMP和LOOP指令 过程的定义和使用 调用链接库中的函数 OllyDbg简介 32 位 Windows 调试器(Debugger) 反汇编,将 CPU 指令翻译为汇编语句 动态追踪汇编语句的执行 Ring3 级 官网地址, http://www.ollydbg.de/ JMP和LOOP指令 控制转移 控制转移( transfer of control )是一种改变汇编语句执行顺序的方法。 无条件转移 条件转移 无条件转移 将 CPU 控制权直接转移到指定的汇编语句 修改 EIP 为指定的内存地址 CPU 从 EIP 指定的内存地址读取下一条机器指令 JMP指令 JMP 目的地址 JMP 指令实现 CPU 控制权的无条件跳转 目的地址是代码标号 代码标号被 汇编器 翻译成内存地址 CPU 看到的是内存地址,不是代码标号 CMP指令 CMP 指令,比较目的操作数和源操作数 CMP reg reg CMP reg imm CMP mem reg CMP mem imm CMP re ...
CA6 流水线技术(2)
CA6 流水线技术 (2) 流水线控制的实现 指令发出:让一条指令从指令译码阶段移动到执行阶段的过程 在ID段检测所有数据危害 如果存在危害,则在发出指令之前停止(插入NOP) 同样,确定是否需要向前通道 也可以在使用操作数的时钟周期前检测危害或向前通道 如EX和MEM的流水段 异常 异常:以意想不到的方式改变指令执行顺序 问题:指令重叠执行使得难于确定哪条指令可以安全修改处理器状态 术语: 中断 故障 异常 异常类型 IO设备请求 用户程序调用操作系统服务 跟踪指令执行 断点(程序员请求中断) 整数算数溢出 浮点数算术异常 页面失效(没在主存中) 未对齐内存访问 违反内存保护 使用未定义或未生效的指令 硬件故障 电源故障 异常的特性 异常的特性将决定硬件需要采取的动作 同步或异步 如果每次使用相同的数据和内存分配执行程序时,事件都发生在同一位置,则该事件时同步的 除了硬件故障,异步是由处理器和内存之外的失败引起的,一般可以在当前指令完成后再处理。 用户请求的或强制的 如果用户任务直接请求 ...
德语学习 A1 Kapitel 9 Was ist passiert?
9-1 Wochenende der Unfall-:e 事故 das Schulfest-e 校园活动 der Kindergarten-: 幼儿园 der Ausflug-:e 郊游 der Geburtstag-e 生日 die Musik-/ 音乐 das Konzert-e 音乐会,演唱会 fallen 掉落,摔落 falle fällst fällt fallen fallt fallen sein gefallen baken 烘培 haben gebacken mitbringen 携带 haben mitgebracht das Picknick-s 野餐 schlafen haben geschlafen 睡觉 aufstehen 起床 sein aufgestanden 9-2 Was ist passiert? der Musiker- 音乐家 passieren - sein passiert 发生 fahren - sein gefahren das Mountainbike-s 山地车 der Arm-e 手臂 brechen 折断 b ...
网络技术与应用 第四章 无线局域网组网技术
无线网的传输介质 利用空间无线电波作为传输介质 结点:固定、移动 优势:不需要铺设线缆、安装简单、使用灵活、易于扩展 无线传输与有限传输的主要区别 信号衰减变化多样 信号在无线传输介质中衰减速度常常比有限传输介质大 无线信号在穿过不同物体的衰减速度不相同 易受干扰 相同频段相互干扰 无线信号更易受电磁噪声干扰 具有多径传播的特性 发送方和接收方之间走过的路径不同,接收方收到的叠加信号模糊不清 物体在发送方和接收方之间移动,多径传播对接收信号影响更大 无线传输技术 目标:充分利用信道、提高抗干扰能力和可靠性 扩频 跳频扩频 FHSS 直接序列扩频 DSSS 正交频分复用 OFDM 多入多出 MIMO 红外 IR:目前很少使用 无线局域网的信道 信道:将使用的频带范围划分为多个子频带,这些子频带被称为信道 目标:提高通信效率,减少无线局域网之间的相互干扰 一个区域内可以部署多个无线局域网 每个无线局域网可以采用不同的信道 每个无线局域网工作时只能使用一个信道 802.11a和802.11g信道划分 2.4~2.485GHz,共85MHz 划分 ...
计算机网络 第三章 传输层协议
Kapitel 3 传输层协议 (需配合PPT) 3.1 传输层需要解决的基本问题 网络层——尽力而为 best effort,不保证可靠性 出现:延迟、乱序、出错、丢失等情况 传输层需要解决 可靠性问题 复用和分用(对于多进程,共享IP和网络接口) 3.2 TCP/IP体系结构中传输层协议与服务 基本功能:复用分用、可靠性 传输层执行的动作 发送端:将应用层的消息封装成传输层的数据单元,传递到网络层 接收端:将从网络层接收的传输层数据单元,处理后交给应用层 传输控制协议TCP(Transport Control Protocol) 为进程间通信提供面向连接的、可靠的传输服务 实现复用分用、差错检测、确认重传、流量控制等传输层功能 用户数据报协议UDP(User Datagram Protocol) 为进程间通信提供非连接的、不可靠的传输服务 实现复用分用、差错检测等传输层功能 3.3 用户数据报协议(UDP) 特点 发送方和接收方不需要握手过程 每个UDP数据单元(数据报)独立传输 提供复用分用功能和可选的差错检测功能 支持组播通信(点 ...
汇编语言与逆向技术基础 四、数据传送与寻址
汇编语言与逆向技术基础 四、数据传送与寻址 本章知识点 数据传送指令 加法和减法 数据相关的操作符和伪指令 间接寻址 数据传送指令 汇编语言与高级语言 汇编语言与高级语言最根本的不同之处在于,程序员必须掌握 内存中的数据存储 和 机器与系统相关的大量细节 汇编语言给了程序员极大的 自由 ,可以直接与机器对话,不需要依靠各种“翻译人员” 指令 一条汇编语句 标号( identifier) 指令助记符( 操作码 opcode) 操作数(oprand) 注释(comment) 操作数类型 立即数( immediate) mov eax, 10h 寄存器(register) inc eax 内存(memory) mov eax, [ebp+8] 寄存器操作数的简写符号 r8 8位通用寄存器 r16 16位通用寄存器 r32 32位通用寄存器 reg 任意的通用寄存器 sreg 16 位段寄存器 立即数操作数的简写符号 imm 8 位、 16 位或 32 位立即数 imm8 8 位立即数 imm16 16 位立即数 imm32 32 位立即数 ...
CA5 流水线技术(1)
CA5 流水线技术 (1) 指令执行过程 每条指令均可在5个时钟周期内完成。 ALU操作:IF 取指——ID 译码——Reg Fetch 读寄存器——ALU 执行——写结果回寄存器 MEM操作:IF 取指——ID 译码——Reg Fetch 读寄存器——计算有效地址——访存——(写回寄存器) 控制操作:IF 取指——ID 译码——Reg Fetch 读寄存器——计算有效地址(调转到的那个地址)——分支完成(将计算的地址存入 PC 寄存器) 将 ID 译码可以和 RF 读寄存器合并为一个时钟周期。 取指令IF 取指令 向存储器发出 PC 的内容 从存储器重取回当前指令 通过+4更新 PC 内容指向顺序的下一条指令(如果跳转了的话,+4的操作会被废弃掉) 优化 指令缓冲器(指令 Cache) 指令预取(一次不止读取一条指令,而包含了 PC 对应指令后边若干条指令,需要扩展指令寄存器 IR 的空间) 性能影响 代码密度 可变的指令长度 指令译码和读寄存器 ID 指令译码和取寄存器 指令译码 读源寄存器;为分支转移指令完成”相等“比较 偏移量符号 ...
汇编语言与逆向技术基础 三、汇编语言基础
汇编语言与逆向技术基础 三、汇编语言基础 本章知识点 汇编语言的基本元素 定义数据 符号常量 汇编、链接和运行程序 汇编语言的基本元素 基本元素 整数常量、整数表达式 实数常量 字符常量、字符串常量 保留字、标识符 指令、伪指令、NOP 指令 整数常量 [{+/-}]数字[基数] 基数后缀 Radix h 十六进制、 q/o 八进制、d 十进制、b 二进制 r 编码实数 如果整数常量后面没有基数后缀,默认十进制 10, 10d, 10o, 10h, 0A0h, 10b 以字母开头的十六进制常量前面必须加 0 整数表达式 包含整数值和算数运算符的数学表达式 表达式结果不能超过 32bits 的表示范围,超过了会溢出 MOD: 取余运算 算数运算符的优先级 () 优先级 1 * / MOD 优先级2 + - 的优先级3 实数常量 十进制实数 编码(十六进制)实数 十进制实数常量 -1.11E-5,2.、+3.0、2.E5 十进制实数常量由符号、整数、小数点、小数和指数组成 [sign]integer.[integer] ...
CA4 存储层次
CA4 存储层次 存储层次重要性 性能差距:处理器访存的请求时间和DRAM访问延时时间 引言 问题 期望拥有无限容量的快速存储器,但是快速存储器的比特价格远远高于慢速存储器的比特价格 解决方法:存储层次 memory hierarchy 性能和价格之间的权衡 整个寻址空间——慢速大容量存储器 容量越小、速度越快、比特价格越贵的存储器越靠近处理器 局部性:时间/空间局部性 保证每次访问的数据都高概率地存储在最快访问速度的物理存储器 从处理器来看 存储空间的容量:容量最大的物理存储器的存储容量 存储空间的速度:速度最快的物理存储器的访问速度 典型存储层次 存储层次的重要性 对多核处理器来说,存储层次变得更加重要 总峰值带宽随处理器核数目增加而增加 intel core i7 处理器每核每周期发出两次访存请求 DRAM 带宽远远小于期望值(<10%) 解决途径 多端口,流水Cache 每核两级Cache 片上共享三级 Cache 再高端微处理器芯片中,一般 Cache 容量>10MB 消耗大量的芯片面积核功率预算 ...
数字信号处理 四、数字信号
数字信号处理 四、数字信号 连续信号和离散信号 确定信号与随机信号 确定信号多为我们需要研究的对象 此处确定信号实际上有两种:一种可以使用公式;另一种不可使用公式表示(语音输入等) 随机信号在本课中多为干扰噪音 周期信号与非周期信号 可用周期函数表示,在DSP中非常重要 DSP研究的是时间轴上的信号变化,周期函数是最容易研究的 把一个函数变成多个函数表示。周期函数可以被当做工具。(分解的概念) 周期信号定义 数学上的定义 对于连续函数信号的周期,我们有时f(t)=f(t+k∗T)f(t)=f(t+k*T)f(t)=f(t+k∗T),T为周期通常T可以为任意值,k为任意整数 对于离散信号:满足x[n]=x[n+k∗N]x[n]=x[n+k*N]x[n]=x[n+k∗N]的序列,被称为具有周期N的周期序列,其中N是一个正整数,而k是任意整数。 满足上式的最小N值被称为基本周期 能量与功率信号 对于序列x[n],其能量定义如下:ϵx=Σn=−∞∞∣x[n]∣2\epsilon_x=\Sigma_{n=-∞}^∞|x[n]|^2ϵx=Σn=−∞∞∣x[ ...