汇编语言第六章

8088/8086:

最小模式下信号总线由芯片内部直接引出

最小模式下 8086 的 低八位数据线 和 低八位地址线

位分时复用

控制线:

发送地址时,

会送出 ALE(地址锁存允许信号) 信号,

IO/(!M) 信号区分 端口 和 存储器,端口用于 键盘鼠标等外设等,

另外用于 内存(ROM+RAM+显存) 访问(磁盘,内存条,显卡)

高4位地址线 也为分时复用,分别表示 地址/状态

(!DEN)  :Data Enable

(DT/R)  :Data Transfer

(INTR)  :Interrupt Receive

(INTA)  :Interrupt Access

(NMI)   :Non Maskable Interrupt

(HOLD)  :Hold DMA

(HLDA)  :Hlod DMA Access

最大模式下控制总线由8088和总线控制器8288共同构成

实验:

  关于segment编译后站多少字节:

assume cs:code, ds:data, ss:stack

data segment
    dw 0123h, 0456h, 0789h, 0abch, 0defh, 0fedh, 0cbah, 0987h
data ends

stack segment
    dw 0, 0, 0, 0, 0, 0, 0, 0
stack ends

code segment
start:      mov ax, stack
            mov ss, ax
            mov sp, 16

            mov ax, data
            mov ds, ax

            push ds:[0]
            push ds:[2]
            pop ds:[2]
            pop ds:[0]

            mov ax, 4c00h
            int 21
code ends

end start
assume cs:code, ds:data, ss:stack

data segment
    dw 0123h, 0456h
data ends

stack segment
    dw 0, 0
stack ends

code segment
start:      mov ax, stack
            mov ss, ax
            mov sp, 16

            mov ax, data
            mov ds, ax

            push ds:[0]
            push ds:[2]
            pop ds:[2]
            pop ds:[0]

            mov ax, 4c00h
            int 21
code ends

end start
assume cs:code, ds:data, ss:stack

code segment
start:      mov ax, stack
            mov ss, ax
            mov sp, 16

            mov ax, data
            mov ds, ax

            push ds:[0]
            push ds:[2]
            pop ds:[2]
            pop ds:[0]

            mov ax, 4c00h
            int 21
code ends

data segment
    dw 0123h, 0456h
data ends

stack segment
    dw 0, 0
stack ends

end start

  通过这个实验,再doxbox中debug 单步,发先 前两种 代码段大小 为 N 则 实际编译大小为  min(2^n >= N) 字节  ,而下面这种固定为48个字节

未完续待……

原文地址:https://www.cnblogs.com/daker-code/p/12397742.html

时间: 2024-10-08 07:37:20

汇编语言第六章的相关文章

汇编语言:第六章 编写多个段的程序

多个段相对单个段结构清晰易于调用 将数据段数据逆序放在原位置 assume cs:code,ds:data,ss:stack data segmentdw 0123h,0456h,0789h,0abch,0defh,0fedh,0cbah,0987h //定义8个字型数据  16个内存单元data ends stack segmentdw 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 //定义栈段,8个空字单元stack ends code segmentstart: mov

汇编语言第六章-包含多个段的程序

(1)将下面的程序编译连接,用debug加载,跟踪然后回答问题 assume cs:code,ds:data,ss:stack data segment dw 0123h,0456h,0789h,0abch,0defh,0fedh,0cbah,0987h data ends stack segment dw 0,0,0,0,0,0,0,0 stack ends code segment start:  mov ax,stack   mov ss,ax mov sp,16 mov ax,data

数据库系统实现 第六章 查询执行

第六章 查询执行 查询执行也就是操作数据库的算法 一次查询的过程: 查询-->查询编译(第七章)-->查询执行(第六章)-->数据 查询编译预览 查询编译可以分为三个步骤: a)分析:构造分析树,用来表达查询和它的结构 b)查询重写,分析树被转化为初始查询计划,通常是代数表达式,之后初始的查询计划会被优化为一个时间更小的计划 c)物理计划生成,将查询计划转化成物理的计划, 为了选择更好的查询计划,需要判断 1)查询哪一个代数的等价形式是最有效的 2)对选中形式的每一个操作,所使用的算法选

第六章:异常机制

第六章:异常机制 异常的定义 异常:在程序运行过程中出现的意外事件,导致程序中断执行. 异常处理 try...catch 语法:try{ //可能出现异常的代码}catch(异常类型 异常对象名){ //处理异常的代码:}执行过程:当try中的代码异常发生时抛出一个异常对象,该异常对象与catch中异常类型进行匹配,匹配成功进入catch块,否则不执行catch中代码(相当于异常未被处理).程序只有当异常处理成功后才能继续执行. try...catch...catch 语法:try{ //可能出

2017上半年软考 第六章 重要知识点

第六章 项目整体管理 []项目整体管理概述 [][]项目整体管理的含义.作用和过程 项目整体管理6个过程?p264 项目整体管理包括什么? 项目管理的核心是什么? 项目整体管理涉及哪几个方面?p265 [][]项目经理是整合者 项目经理作为整合者要做什么?p265 [][]整体管理的地位 []项目整体管理实现过程 [][]制定项目章程概述 项目章程的意义是什么? 项目章程包括什么? [][]制定项目章程 项目章程的作用? 项目章程的输入? 制定项目章程的工具和技术?p267 项目章程的输出?p2

ASP.NET MVC with Entity Framework and CSS一书翻译系列文章之第六章:管理产品图片:多对多关系(上)

这章介绍了怎样创建一个新的实体来管理图片,怎样使用HTML窗体来上传图片文件和使用多对多关系来使它们与产品相关,并且怎样来保存图片到文件系统中.这章也介绍了更多复杂的错误处理增加客户端错误到模型中为了把它们显示回给用户.在这章中播种数据库使用的产品图片可能在在第六章的从Apress网页站点下载代码中. 注意:如果你想遵从这章的代码,你必须完成第五章的代码或者从www.apress.com下载第五章的源代码作为一个起点. 创建实体保存图片文件名 这个项目,我们正要使用文件系统在Web项目中存储图片

Linux与云计算——第二阶段Linux服务器架设 第六章:目录Directory服务器架设—FreeIPA

Linux与云计算--第二阶段Linux服务器架设 第六章:目录Directory服务器架设-FreeIPA 1 FreeIPA 配置FreeIPA服务器 Configure IPA Server to share users' account in your local network. [1] Install FreeIPA. [[email protected] ~]# yum -y install ipa-server ipa-server-dns bind bind-dyndb-lda

APUE读书笔记-第六章 系统数据文件和信息

昨天看完了,今天来看看第六章.感觉第六章的内容不是非常重要.简单看看吧 6.2 口令文件 口令文件其实就是/etc文件夹下的passwd文件,但处于安全性的考虑,我们无法直接读取它.就是通过直接限制权限的方式对其进行保护,passwd文件具体权限如下: -rw-r--r-- 1 root root 可以看到只有root用户具有读写权限,与root同组的用户与其他用户仅具有读权限. 不过为了解决以上问题,Linux中给出了一系列数据结构与函数帮助我们操纵口令文件,首先是关键数据结构,定义位于/in

CSS3秘笈:第六章

第六章  文本格式化 1.font-family 属性设置字体.除了指定想要的字体之外还要使用备用字体.例如: p{ font-family:Arial ,Helvetica ,sans-serif; } 如果字体的名称中包含多个单词,则必须用双引号(””)将它们括起来. 2.·serif字体,适合冗长的文字信息. ·sans-serif字体看起来干净而整洁因此经常被放在标题上. ·monospaced字体经常用于显示计算机代码.字体中的每个字母都是等宽的. ·其他常用字体:Arial Blac