【实验内容】

用16位指令编写完整程序,实现下列数据定义语句和相关指令,在debug下查看内存数据的定义情况,单步跟踪查看各寄存器的值。

题目:

ORG 0

ARRAY LABEL BYTE

DA1 DW 2,9,14,3,315H,-6

DA2 DB 7,‘ABCDEDFG’

LEN = $-DA2

ORG 100H

DA3 DW DA4

DA4 DB 4 DUP(2 DUP(1,2,3),4)

…………

MOV AL,ARRAY+2 (AL)=( )H

ADD AL,DA2+1 (AL)=( )H

MOV AX,DA2-DA1 (AX)=( )H

MOV BL,LEN (BL)=( )H

MOV AX, DA3 (AX)=( )H

MOV BX, TYPE DA4 (BX)=( )H

MOV BX, OFFSET DA4 (BX)=( )H

MOV CX, SIZE DA4 (CX)=( )H

MOV DX, LENGTH DA4 (DX)=( )H

MOV BX, WORD PTR DA4 (BX)=( )H

MOV BL, LEN AND 0FH (BL)=( )H

MOV BL, LEN GT 5 (BL)=( )H

MOV AX, LEN MOD 5 (AX)=( )H

填后的答案:

MOV AL,ARRAY+2 (AL)=( 09 )H

ADD AL,DA2+1 (AL)=( 41 )H

MOV AX,DA2-DA1 (AX)=( 000c )H

MOV BL,LEN (BL)=( 09 )H

MOV AX, DA3 (AX)=( 0102 )H

MOV BX, TYPE DA4 (BX)=( 0001 )H

MOV BX, OFFSET DA4 (BX)=( 0102 )H

MOV CX, SIZE DA4 (CX)=( 0004 )H

MOV DX, LENGTH DA4 (DX)=( 0004 )H

MOV BX, WORD PTR DA4 (BX)=( 0201 )H

MOV BL, LEN AND 0FH (BL)=( 09 )H

MOV BL, LEN GT 5 (BL)=( ff )H

MOV AX, LEN MOD 5 (AX)=( 0004 )H

具体代码:

DATA SEGMENTORG 0ARRAY LABEL BYTEDA1 DW 2,9,14,3,315H,-6DA2 DB 7,'ABCDEDFG'LEN = $-DA2ORG 100HDA3 DW DA4DA4 DB 4 DUP(2 DUP(1,2,3),4);1 2 3 1 2 3 4   *4times
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START:
MOV AX,DATA
MOV DX,AXMOV AL,ARRAY+2;MOV AL,[0002]
ADD AL,DA2+1;MOV AL,[000D]
MOV AX,DA2-DA1;MOV AX,000C;DA1的长度
MOV BL,LEN;MOV BL,09;DA2的长度
MOV AX,DA3;MOV AX,[0100]
MOV BX,TYPE DA4;MOV BX,0001
MOV BX,OFFSET DA4;MOV BX,0102
MOV CX,SIZE DA4;MOV CX,0004
MOV DX,LENGTH DA4;MOV DX,0004
MOV BX,WORD PTR DA4;MOV BX,[0102]
MOV BL,LEN AND 0FH;MOV BL,09
MOV BL,LEN GT 5;MOV BL,FF
MOV AX,LEN MOD 5;MOV AX,0004
MOV AH,4CH
INT 21H
CODE ENDS
END START

16位伪指令汇编程序查看内存相关推荐

  1. 王爽 16 位汇编语言学习记录

    以下为汇编学习记录,内容全部出自王爽的16位<汇编语言>,如有错误,可直接去查看原书. 汇编语言   机器语言是机器指令集的集合,机器指令是一列二进制数字,计算机将其翻译成高低电平,从而使 ...

  2. 数字图像处理图像反转的实现_使用8086微处理器反转16位数字

    数字图像处理图像反转的实现 Problem statement: 问题陈述: Write an assembly language program in 8086 microprocessor to ...

  3. 【微机原理与接口 4】—— 寻址方法与指令系统 1(16位寻址方式解析)

    在之前的 BlogBlogBlog 中,我们学习了 8088/8086 CPU 内存管理的方式,也知道了逻辑地址的计算方法.既然我们知道了一个数据在内存里面的地址,那么下一步就是如何去找到它.因此,本 ...

  4. 自制 | 纯手工自制一个16位RISC架构CPU

    这周和大家分享的这个项目来自hackaday. 从创作的日志来看,这个项目从2018年底开始,一直到陆陆续续更新到前俩天. 一个耗时又有趣的项目. 项目的起因是,作者在学习了MITx的 "计 ...

  5. 8位、16位和32位的MCU,更多的位是更好的吗?

    图1: mcu 由三个基本单元组成,中央处理器(CPU " bit"是"二进制数字"在一个8位单片机中,数据以8位的形式存储,称为字节(在某些情况下,称为八位元 ...

  6. 单片机8位、16位、32位和64位系统在内存上的区别

    总线.内存和变量的相关知识 前言 本篇文章主要介绍单片机内部的总线和内存的一些关系及知识点, 一.32位系统和64位系统的区别 1. 8位.16位.32位和64位CPU的含义 如标题所述,不同位数的单 ...

  7. 跟我一起玩《linux内核设计的艺术》第1章(二)——linux内存加载和16位实模式使命的终结

    经过折腾了整整一篇的BIOS,总算可以跑linux 0.11内核源码了.第一个执行的是bootsect.s,如果现在你还没有下载linux 0.11的源码就赶紧去下载.如果自己懒得找,可以参见我下一篇 ...

  8. 选择那个汇编编译器,和如何编译16位dos和32位汇编程序。

    学习汇编语言第一步,选择编译器.建议使用MASM32 下载地址: http://www.masm32.com/masmdl.htm 这个可以编译16位dos编译程序,也可以编译32位的程序. 程序安装 ...

  9. 16位汇编程序使用递归完成阶乘求解

    这里我使用的是简化定义,采用了small的模型.由于要用到递归,因此堆栈段的建立是必要的. N是举例为3,result为结果存放处 .model small .stack .dataN dw 3res ...

  10. ubuntu 16.04查看内存和磁盘使用情况

    ubuntu 查看内存: free -mh 查看剩余磁盘容量 df -hl

最新文章

  1. Win7无法远程桌面
  2. HTML5本地存储之Web Storage篇
  3. 在MySQL登录时出现Access denied for user ‘root‘@‘localhost‘ (using password: YES)
  4. 前台jsp页面向后台传汉字出现乱码问题解决办法
  5. (JAVA)Map集合
  6. php内核一 一次请求与结束
  7. python中os.path.dirname(__file__)的使用(获取文件夹路径)(获取当前py文件绝对路径)
  8. Spring 配置多个数据源,并实现动态切换
  9. 转easyui datagrid 前台分页的实现
  10. 人工生命 2.0.2 更新,模拟体全息存贮的模式识别
  11. 免费视频直播点播服务器系统,搭建一套完整的网络视频流媒体直播/点播服务系统需要具备哪些条件?...
  12. [leetcode] 554. 砖墙
  13. 打开 Freetextbox 的 InsertImageFromGallery 及如何接收 ftb.imagegallery.aspx 返回的图片信息...
  14. ODBC驱动程序丢失解决方法
  15. matlab小波滤波详解,基于matlab的振动波形小波分析及小波基础知识学习
  16. xp获取计算机管理员权限,xp管理员权限怎么获取?管理员权限不足的解决方法...
  17. NVivo for Mac中的编码难理解?这6个视频帮助你!
  18. 2022-2027年中国血液制品行业市场深度分析及投资战略规划报告
  19. centos7开启网卡命令_Centos7启动网卡并查看IP地址的方法
  20. python编译 pyd 工具_windows平台 python生成 pyd文件

热门文章

  1. xtrabackup mysql 5.1_编译支持mysql-5.1.73版本的xtrabackup
  2. 手机电源键关不了屏幕_没有home键iphone强关机,关机你会吗?小的快来!
  3. ftp测试工具_Linux网络配置 | FTP 实战-本地用户登录
  4. python settings_python settings如何配置sqlite?
  5. 机器人学中的状态估计 中文版_机器人学——学习笔记18(Minpulator Traj Planning Example)...
  6. scanf(%d,%d,a,b)在c语言所代表的含义,在C语言中,有语句“inta,b;scanf(a=%db=%d,a,b);”,下.._简答题试题答案...
  7. android launcher主要功能_Android 或有新变化,语音搜索进一步强化
  8. JavaWeb:Cookie和Session
  9. JavaScript:split() 方法和join() 方法
  10. 「学习路线分享」SLAM/深度估计/三维重建/相机标定/传感器融合(目录)