很久没有再次接触汇编语言了,最近需要PO解一个由DRM(数字版权管理)加密而成的视频,想到了以前学到的汇编工具。
汇编语言简介:
汇编语言是一种最低级、最古老、不具有移植性的编程语言,它能够直接访问计算机硬件,所以执行效率极高,占用资源极少,一般用于嵌入式设备、驱动程序、实时应用、核心算法等。
汇编语言的缺点是开发周期特别长,实现一个简单的功能都非常麻烦,已经很少用来编写应用程序了。
汇编语言跟C语言一样,入门很容易,精通难。
参考书籍:
可以参考王爽老师的《汇编语言第三版》
机器语言
计算机能识别的0和1,是一种指令集合。
汇编语言是一种伪指令,需要借助编译器,才能令电脑工作。
内存中存在大量的数据和指令。
地址总线:
一个CPU有N条地址总线,也就是这个CPU的地址总线宽度为N,寻址能力为2的N次方。
数据总线:
CPU与其他硬件,交流的时候使用数据总线,有多少条数据总线,那么一次性可以传输多少位数据过去。
控制总线:
CPU对其他硬件发出控制指令,有多少条控制总线,那么就有多少中控制功能。
其他硬件设备
CPU在与其他硬件设备打交道的时候,会把它们当作内存来看待。
80386的CPU的地址总线宽度为32位,则内存地址空间最大为4GB。超过的部分,没有使用。
老的XP系统,因为是32位的系统,故最大支持4GB内存。