今天有学会汇编输出“Hello World!”吗

这是一篇关于学习汇编语言的系列笔记,从基础的二进制、十六进制数、数据存储格式到CPU的结构、寄存器、内存操作、段地址和偏移地址的概念,再到栈的使用和溢出攻击的理解。作者通过VC6.0、DOSBox和debug工具实践,逐步掌握汇编语言,最终尝试编写并运行简单的程序,但尚未实现输出“Hello World!”。
摘要由CSDN通过智能技术生成

19/11/27
汇编学习的目的依旧是为逆向等工作打基础
每天学习一小时算作一次总共学习三十次(可根据课程量调整至最多45次)
NO.1
并没有直接接触到过多的代码
只是粗略的了解到了内存在硬件上的一些操作
地址数据和操作 三者依靠三种符号指令分为三种信息用三种总线进行传输
二进制数后边加B(binary),十六进制数后边加H(hex)
少有的指令——MOV AX,BX(bx往ax传)
VC6.0可以写win32汇编,以及读取c/c++对应汇编语言
dosbox是模拟器,依靠debug好像可以避免使用虚拟机(太浪费空间了)
书是定要借到王爽老师的汇编语言第三版的
一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一
NO.3
书借到了
初识寄存器,可能计划得搁浅一段时间,毕竟为了这些玩意儿我连说好认真学的matlab都没怎么学,英语练字这些事情也就更谈不上了
学了数据的一个存储格式,以及数据宽度。试着用dosbox改了一下ax的参数值
物理存储器的基本构架有了一个认识(ROM,RAM)
未完待续,笔记也没誊抄完

一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一
NO.4
今天学了一些寄存器的基本内容,运算:add 、 mov
外部总线保证CPU与其他器件的相连,内部总线实现寄存器,控制器,运算器的数据传输。
其中运算器进行数据处理,控制器控制各种器件进行工作,寄存器进行信息存储
//不同的CPU 寄存器的个数、结构均不同
我们通过控制寄存器来进一步控制CPU
汇编不区分大小写
一般寄存器:ax,bx,cx。。。
用于存储一般性的数据
寄存器ax(16位)为了保证兼容性分为高位寄存器ah(8位)于低位寄存器al(8位)。寄存器之间互不干扰,如果运算中有值的溢出会将溢出的数值存储到别的位置(CPU并非真正的丢失)
4位二进制可以与十六进制相互转化,3个二进制也可与八进制相互转化
字节(byte) 1byte = 8bit 可存于8位寄存器
字(word) 1word = 2byte 一个字由一个高位字节和一个低位字节组成
十进制数后不加符号 20000
二进制加B 0100111000100000B
十六进制加H 4E20H
一个内存单元可存放八位数据,CPU寄存器可存放n个八位数据。
即:计算机存储数据大多是1~n个八位数据构成的
一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一一

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值