汇编day1

今天开始学汇编,由于疫情原因,又要晚开学好久,开学之前把它拿下。

链接: https://pan.baidu.com/s/14YA4BcDK3t0NStwqN2q56g 提取码: q63b
这是几个dosbox 以及gvim编译器的安装包,点exe就可以了,很小的
问题:CPU怎么区分指令和数据?

学习过程
1 端口:CPU是给各个设备都编号的,CPU就是通过端口号来访问各类设备
2 CPU是通过内存地址访问内存空间的
3 RAM:断电后指令数据就没有了,只允许读取,写入
ROM:断电后指令数据都还在,只允许读取
4 GPU:图形处理芯片,图形的要求越来越高了,早期的CPU是包含这个的,但是后来分出GPU来,我们学汇编是针对CPU的,我们要理解地址线,数据线,控制线。对GPU显存要求小一点
5 CPU 有一部分是存放指令,数据信息的部分叫做寄存器
6 我们通过汇编语言中的汇编指令控制寄存器中的内容从而控制CPU,进而控制计算机


	AX,一般为数据寄存器

在这里插入图片描述
有很多寄存器,AX就是一个,图在上

先看这四个通用数据寄存器

AX
BX
CX
DX
AX的高8位构成AH寄存器,AX低8位构成AL寄存器
可以各自分割为2个8位寄存器
数据线的宽度决定了cpu一次性能够读取多长的数据
字节型数据: byte 8bit-8位寄存器中
字型数据: 2byte-16bit-16位寄存器中 2个字节

DeBug -a
8位数据会给8位寄存器
16位数据也只能给16位寄存器
保证位置的一致性
-t 是单步调试

mov ax,4E20
就是指把4E20赋值给ax
注意AL AH两个位
移动指令

小测试:用汇编去计算222*2的值
debug -a
mov ax,2 add ax,ax add ax,ax add ax,ax
-t -t -t -t
在这里插入图片描述

在这里插入图片描述


地址寄存器

分为段地址寄存器,偏移地址寄存器

段地址寄存器偏移地址寄存器
dssp
esbp
sssi
csdi

ip,bx,也是偏移地址寄存器
段地址 * 16(10H)+偏移地址=物理地址
段地址 * 16 = 基础地址
基础地址+偏移地址=物理地址

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值