美文网首页
汇编的学习笔记一

汇编的学习笔记一

作者: suntwo | 来源:发表于2019-08-04 22:02 被阅读0次

基础知识

安装软件dosbox debug.exe

计算机语言是用来和计算机进行交流的。

机器指令 是一串二进制数 来指导计算机的运行
机器指令使用高低电平来进行表示

汇编语言通过编译器解释成机器语言
伪指令告诉编译器怎么翻译机器语言

dosbox介绍

内存编号 十六进制数字 汇编指令

u指令我们看到的是机器指令和汇编指令
d指令我们看到的是数据
r可以查看寄存器的值
q为退出
因此接下来便是一个问题cpu怎么区分数据和指令
内存中是根据字节进行编址的

指令和数据在内存中是没有区别的

内存编号为什么是从零开始
地址线的数量决定了能找到内存的大小

数据线和控制线
数据线:决定了传递一次数据时的能力 比如数据线为八,每次可以传送八位

控制线:决定了cpu对其他部件的控制能力

一个cpu的寻址为8KB则地址总线为13
在存储器中数据和指令都是以二进制的形式存放的

内存包括很多 内存条 显存等

cpu是通过端口访问鼠标键盘等外设的

键盘和鼠标内有一个芯片 可以存储数据和指令 这个端口是连接cpu和外设的

端口有一个端口号

cpu通过主板上的电路读到数据

GPU是图像处理芯片 运算速度很快

B800:400是显存地址

cpu一定有可以存放地址信息和数据信息的地方我们称之为寄存器
程序员通过汇编语言更改寄存器的值来控制cpu从而控制计算机

DS ES SS CD 都是冒号左边的信息 IP是右边的信息

寄存器

AX BX CX DX是通用寄存器 是用来存放数据的 是16位的可以表示0~65535
这四个寄存器为了兼容每个寄存器可以分为两个8位的寄存器 eg:AX->AH+AL

下面更改寄存器的值

a表示输入指令
eg:
a
mov ax,5
这两句表示编译了没有执行
t
表示执行
我们可以观察到AX寄存器的内容已经改变了

使用过mov指令必须原目的操作数的位数一致
在这个debug软件中是按照十六进制的

当加法超过寄存器的范围时,不会向其他位进位,而是在标志寄存器中的CF=1

a
mov al,ff
mov al,2

t
t    表示单步调试  

ax结果为0001

八位寄存器加法运算不会向前进位  是独立的

段地址寄存器:偏移地址寄存器
ds sp
es bp
ss si
cs di
ip
bx

8086是20个地址线,而寄存器是16位的,因此为了能够寻址位1M发明了地址加法器。地址范围为0~1M
有一个地址加法器
段地址X16+偏移地址 = 物理地址
段地址X16=基础地址
基础地址+偏移地址=物理地址

cpu怎么区分指令和数据的
u指令将某个内存当做指令显示
d将内存当做数据解释

cpu将cs和ip指向的内容解释为指令

可以通过下面方式更改段寄存器的值

r cs
0
便将cs改为0

d 2000:0 按照数据查看当前位置的数据

使用命令改变内存中的数据

-d 2000:0  查看当前位置的数据

-e 2000:0
便可写入数据

可以更改cs和ip的值来设置想要在哪里执行代码

-r cs
:2000
-r ip
:0

相关文章

  • ARM64汇编学习笔记一(初始汇编)

    ARM64汇编学习笔记一(初始汇编)

  • 汇编语言之基础

    本系列为学习<汇编语言> 王爽版 的学习笔记 [TOC] 汇编语言是什么? 汇编语言是直接在硬件之上工作的编程语言...

  • 汇编学习笔记(一)

    基础知识 汇编语言,有 3 类指令组成: 汇编指令:机器码的助记符,有对应的机器码。 伪指令:没有对应机器码,由编...

  • 汇编的学习笔记一

    基础知识 安装软件dosbox debug.exe 计算机语言是用来和计算机进行交流的。 机器指令 是一串二进制...

  • 汇编入门(长文多图,流量慎入!!!)

    8086汇编 本笔记是笔者观看小甲鱼老师(鱼C论坛)《零基础入门学习汇编语言》系列视频的笔记,在此感谢他和像他一样...

  • 汇编语言 学习笔记(三)

    汇编语言学习笔记 四、汇编语言程序格式 语句基本格式 汇编语言程序中的语句由 4 项组成,格式如下: 名字(nam...

  • 汇编学习笔记

    工具:DTDebug(VT-O)专业版V1.0.025主要有四个窗口:反汇编窗口、寄存器窗口、堆栈窗口、内存窗口。...

  • 汇编学习笔记

    抄的博客 通用寄存器: AX,BX,CX,DX 称作为数据寄存器: AX (Accumulator):累加寄存器,...

  • 汇编学习笔记

    地址 指令执行过程 cpu从cs:ip所组成的地址中读取指令,将指令放到指令缓存器中 IP = IP + 所读指令...

  • 汇编学习笔记

    汇编学习笔记 花了一周的时间,对汇编做了一次深刻的复习和再学习,想记下来的东西有很多,我尽量把总结写全。 0x01...

网友评论

      本文标题:汇编的学习笔记一

      本文链接:https://www.haomeiwen.com/subject/saludctx.html