![](https://img-blog.csdnimg.cn/20190904163729112.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
汇编语言
文章平均质量分 79
《汇编语言》王爽
da1234cao
在安全领域生根发芽
展开
-
汇编debug小练习
一、将下面的3条指令写入从2000:0开始的内存单元中,利用这3条指令计算2的8次方。mov ax,1 add ax,ax jmp 2000:0003/*查看下寄存器的现状*/ debug -r/*先内存写入指令*/-a 2000:0 //在20000的位置,用汇编指令的形式在内存中写入指令mov ax,1add ax,axjmp 2000:0003//跳回段地址是200...原创 2019-01-04 10:46:02 · 3119 阅读 · 0 评论 -
第17 使用BIOS进行键盘输入和磁盘读写
使用int 9和int 16h,键盘的输入与显示。转载 2019-05-09 18:14:43 · 638 阅读 · 0 评论 -
第16章 直接定址表
重点在于标号,在程序中的处理。原创 2019-05-08 21:02:49 · 305 阅读 · 0 评论 -
第15章 外中断
本系列博文参考《汇编语言》 作者王爽外中断和内中断的处理过程相似。只不过中断源的产生来自外部。本章,可以说是端口和内中断的内容结合。书上以键盘为例,讲解外部中断的处理过程。1 PC机键盘的处理过程键盘上的每一个键相当于一个开关,键盘中有一个芯片对键盘上的每一个键的开关状态进行扫描。按下一个键是,开关接通,该芯片就产生一个扫描码,扫描码说明了按下的键在键盘上的位置。扫描码被送入主板上...原创 2019-05-08 11:37:55 · 279 阅读 · 0 评论 -
第11章 标志寄存器
本系列博文参考《汇编语言》 王爽本章掌握知识点(1)标志寄存器(2)与标志寄存器相关的指令:adc、sbb、cmp、转移指令(3)重点理解掌握,标志寄存器在cmp和je等转移指令配合使用中的作用。(类比高级语言中的if语句)1 标志寄存器1.1 ZF标志零标志位。它记录相关指令执行后,其结果是否为0.如果结果为0,则zf=1。如果结果不为0,那么zf=0。1.2 PF标志...原创 2019-04-25 09:49:39 · 293 阅读 · 0 评论 -
第14章 端口
本系列博客参考《汇编语言》 作者 王爽重点掌握(1)IO端口的含义(2)IO端口的读写控制1 端口介绍计算机的端口,或者说这里指的是IO端口,并非计算机通信的端口。**1.1 什么是I/O端口? CPU使用什么指令与外设进行数据交换? ** 答:CPU与I/O设备通过硬件接口或控制器相连接,这些接口或控制器都有数量不等的端口,这些端口有统一的地址编码,CPU通过这些端口使用输入...原创 2019-05-03 21:28:45 · 281 阅读 · 0 评论 -
第13章 int 指令
本系列博文参考《汇编语言》 作者 王爽 1 int 指令介绍int n 指令,为中断指令。其中 n 为中断向量号。int n指令的执行过程如下:(1) 取得中断类型码n;(2) 标志寄存器入栈,TF、IF设置为0;(3) CS、IP入栈;(4) (IP)=(n∗4),(CS)=(n∗4+2)(IP)=(n * 4), (CS)=(n * 4+2)(IP)=(n∗4),(CS)=(n...原创 2019-05-03 17:39:40 · 1043 阅读 · 0 评论 -
第十章 CALL和RET指令
本博文系列参考自<<汇编语言>>第三版,作者:王爽call与ret都是转移指令,它们可以改变IP值,或者同时改变CS与IP的值,往往在程序中使用它们进行子程序模块的设计。 1 指令介绍 在介绍call和ret指令之前,我们先总结以下前两章的学习思路。这个思路同样可以扩展到第10章。第八章 数据处理的两个问题:数据的位置和长度。mov ax,bx | ...原创 2019-04-23 21:23:44 · 903 阅读 · 0 评论 -
第12章 内中断
本系列博客参考《汇编语言》 王爽1 中断内容介绍(1)中断,指不再向下执行,转去处理其他信息。(详细得中断原理,可以参考《组成原理》,《微机原理与接口》)(2)不同的中断的传入,需要携带不同的信息。(3)中断信息中含有中断号。通过中断向量表(保存CS:IP内容),查询到中断程序的入口地址。当然在这之前,得保存现场。中断之后,返回中断点向下执行。(4)中断向量表在内存得0000:000...原创 2019-04-25 19:07:35 · 120 阅读 · 0 评论 -
第九章 转移指令原理
本博文系列参考自<<汇编语言>>第三版,作者:王爽这里主要讲:jmp指令jmp指令,通过修改cs:ip的值,进行转移。jmp指令,执行的时候,处理偏移地址,不是目的地址。这样有利于浮动装配。(下面的s是标号)jmp sjmp short s (ip的修改范围为-128 ~ 127)jmp near ptr s (ip的修改范围-32768 ~ 32767)...原创 2019-04-13 15:24:08 · 784 阅读 · 0 评论 -
第八章 数据处理的两个问题---汇编笔记
重点:数据在内存的位置,以及每次处理数据的长度。实验七,通过数据的复制,很好的实践了这两点。转载 2019-04-13 10:03:07 · 312 阅读 · 0 评论 -
第七章——更灵活的定位内存地址的方法
本章需掌握:寻址方式的意义和应用。二重循环的处理栈的应用大小写的转化and,or指令编程,将datasg段中的每个单词的头一个字母改写成大写字母。([bx+idata])assume cs:code,ds:datadata segment //注意 每个字符串都是16位 db '1. file ' db '2. edit ...原创 2019-04-03 19:09:38 · 300 阅读 · 0 评论 -
第六章——包含多个段的程序
下面,将学会:如何设置,程序的起始位置;将数据,程序、栈放入不同的段;清楚的理解它们在内存中的位置分布。最开始(首先),咱们将数据段,栈段,程序段,放在一个程序中(不分段)。assume cs:codecode segment dw 0123h,0456h,0789h,0abch,0defh,0fedh,0cbah,0987h mov bx...原创 2019-04-03 16:35:09 · 339 阅读 · 0 评论 -
[BX]和loop指令
通过loop指令,加深循环在计算机中运行过程得理解。[BX],在段基址下,取bx所存内容,作为内存得地址。取该地址。原创 2019-03-29 11:06:50 · 556 阅读 · 0 评论 -
汇编语言——第一个程序
汇编程序软件:emu8086当然使用masm和link也挺好。assume cs:codesgcodesg segment mov ax,2000h mov ss,ax mov sp,0 add sp,10 pop ax pop bx push ax push bx pop ax pop bx ...原创 2019-03-27 17:33:11 · 770 阅读 · 3 评论 -
汇编DEBUG常用指令
转载:https://blog.csdn.net/chksun/article/details/53861928DEBUG下最常用的调试指令为六个 一、常用DEBUG命令(1)R :查看更改cpu寄存器内容(2)D:查看内存中内容(3)E:改写内存中内容(4)U:将内存中机器指令翻译成汇编指令(5)T:执行一条机器指令(6)A:以汇编格式在内存中写入一条指令二、常用命令的使用1...转载 2019-01-03 08:32:04 · 2829 阅读 · 0 评论 -
win10下如何使用debug
转载:win10如何使用debug准备工作:DosBox 和 debug.exe的安装包。最重要的是下载debug.exe。1.安装DosBox。过程相当简单,点点鼠标就好,运行界面如下。但是,此时输入debug,会提示“非法命令”。2.这时候,就到debug.exe上场了。我将其放在 D盘的根目录下。3.运行debugmount c d:\ (不清楚为什么要挂载)c: ...转载 2019-01-02 22:25:06 · 2944 阅读 · 0 评论 -
汇编语言———数据段、程序段、栈段
1. 段的概念转载:https://blog.csdn.net/qq_38176439/article/details/69220124 我们注意到,“段地址”这个名称中包含着“段”的概念。这种说法可能对一些学习者产生了误导,使人误以为内存被划分成一个一个的段,每一个段都有一个地址。如果我们在一开始形成了这种认知,将影响以后对汇编语言的深入理解和灵活应用。 ...原创 2019-01-05 22:26:40 · 18565 阅读 · 5 评论 -
汇编语言 总结
王爽《汇编语言》心得原创 2021-01-28 20:50:30 · 528 阅读 · 0 评论