上一页 1 ··· 4 5 6 7 8 9 10 11 12 ··· 19 下一页
摘要: 一、8086 标志寄存器的位分布可简化为下图: 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 ── ── ── ── ── DF IF TF SF ZF ── AF ── PF ── CF (保留位) 控制标志 状态标志 二、标志寄存器分类 按功能分为状态标志(反映运算 阅读全文
posted @ 2025-12-07 21:53 chenlight 阅读(12) 评论(0) 推荐(0)
摘要: 问题:根据提供的N,计算N的3次方 一、用寄存器来存储参数和结果 assume cs:code data segment dw 1,2,3,4,5,6,7,8 dd 0,0,0,0,0,0,0,0 data ends code segment start: mov ax,data mov ds,ax 阅读全文
posted @ 2025-12-07 15:23 chenlight 阅读(3) 评论(0) 推荐(0)
摘要: OFFSET 是伪指令(伪操作符)(而非处理器执行的指令),核心作用是获取标识符(变量、标号、段名等)的偏移地址(即相对于所在段起始地址的偏移量),本质是汇编器在编译阶段计算并替换的常量值。 一、核心概念 汇编程序中,内存地址由「段地址(段寄存器)+ 偏移地址」组成: 段地址:段寄存器(如 CS/D 阅读全文
posted @ 2025-12-06 19:09 chenlight 阅读(20) 评论(0) 推荐(0)
摘要: [bx+idata]的含义解读 [bx+idata]表示一个内存单元,它的偏移地址为(bx)+idata(也就是bx中的数值+idata值) 比如:mov ax,[bx+200],它的含义如下: 1、将一个内存单元的内容关入AX寄存器中 2、这个内存单元的长度为2个字节(字单元),存放一个字 3、内 阅读全文
posted @ 2025-12-06 11:55 chenlight 阅读(11) 评论(0) 推荐(0)
摘要: 字符在内存中的表现 在 汇编程序中,使用'...'单引号的方式来指明数据是以字符的形式给出的,编译器将把它们转化为相对应的ASCII码。 assume cs:code,ds:data data segment db 'unIX' db 'foRX' data ends code segment st 阅读全文
posted @ 2025-12-05 09:28 chenlight 阅读(4) 评论(0) 推荐(0)
摘要: 问题:完成下面的程序,利用栈,将程序中定义的数据逆序存放 程序运行时,定义的8个数据存放在CS:0~CS:F单元中,依次将这8个字单元中的数据入栈,然后再依次出栈,从而实现数据的逆序存放。 23CS:001CS:156CS:204CS:389CS:407CS:5BCCS:60ACS:7EFCS:80 阅读全文
posted @ 2025-12-05 09:25 chenlight 阅读(1) 评论(0) 推荐(0)
摘要: [......] 在汇编语法的规则 中,这表示一个内存单元 指令 段地址偏移地址 操作单位mov ax,[0]在DS中在[0]中字mov al,[0]在DS中在[0]中字节mov ax,[bx]在DS中在[bx]中字mov al,[bx]在DS中在[bx]中字节 (......) 这是为学习方便做出 阅读全文
posted @ 2025-12-04 11:00 chenlight 阅读(5) 评论(0) 推荐(0)
摘要: 上一篇文章中,已经安装好MASM5.0汇编器,并将p4-1.asm编译成了exe文件,本节我们继续学习debug跟踪功能。 在命令行中输入如上所示命令 再输入-r命令,看一下程序被装载入内存的什么地方了? 段地址DS=OE16 偏移地址IP=0000 以上为数据段的真实内存地址:0E16:0000 阅读全文
posted @ 2025-12-04 08:49 chenlight 阅读(2) 评论(0) 推荐(0)
摘要: 汇编 之 win10 下安装dosbox 和 MASM 参考的是上面这篇文章 DOS模拟器使用的是DOSBOX-X,功能非常强大,2025年还在定时更新 DOSBOX-X正常安装就可以了,一步一步,我安装在了D盘 这里面的关键是配置MASM5.0 所需工具链接: 链接:https://pan.bai 阅读全文
posted @ 2025-12-03 15:37 chenlight 阅读(15) 评论(0) 推荐(0)
摘要: 栈结构: PUSH:入栈指令 POP:出栈指令 push ax :将ax寄存器中的数据送往栈中 pop ax:从栈顶取出数据送入ax寄存器中 (以字为单位对栈进行操作) 问题:CPU是如何知道一段内存空间被当做栈来使用的呢? 回答:8086cpu中,有两个与栈相关的寄存器: SS栈段寄存器 用于存放 阅读全文
posted @ 2025-12-03 11:09 chenlight 阅读(7) 评论(0) 推荐(0)
上一页 1 ··· 4 5 6 7 8 9 10 11 12 ··· 19 下一页