实验二 汇编语言程序设计基础

寻址方式

已知数据段定义如下

DA_BYTE DB ?

V1 DB 22H

V2 DB 33H

MS DB 'ABCDEFG'

(1)将数据指令组合成完整程序,运行前写出下列语句中源操作数和目录操作数的寻址方式,以及目的操作数的值。然后运行程序,记录目的操作数的值,验证分析结果。

MOV CL,50H ;寄存器,立即

MOV SS,AX ;寄存器,寄存器

MOV CX,50H ;寄存器,立即

MOV DA_BYTE,2AH ;直接,立即

MOV DS,AX ;寄存器,寄存器

MOV SI,OFFSET V1 ;寄存器,立即

MOV [SI],AX ;寄存器间接,寄存器

MOV DX,CS ;寄存器,寄存器

MOV DI,2 ;寄存器,立即

MOV AL,MS[DI] ;寄存器,相对

MOV BX,1 ;寄存器,立即

MOV AL,MS[BX][DI] ;寄存器,相对基址变址

(2)指出下列指令中的错误,并说明原因。修改指令,并执行指令观察结果。

MOV AH,BX ;数据类型不匹配

MOV V1,V2 ;不能两个内存数

MOV ES,2000H ;段寄存器不能直接传送立即数

MOV BX,OFFSET V2 ;正确

MOV DA_BYTE,[BX] ;不能两个内存数

MOV CS,AX ;CS不能是目的操作数

MOV DI,OFFSET V1 ;正确

MOV [DI],50H ;两个操作数的数据类型不明确

MOV DS,ES ;不能两个都是段寄存器

相关推荐
杨福瑞1 小时前
数据结构:单链表(1)
c语言·开发语言·数据结构
来来走走1 小时前
kotlin学习 基础知识一览
android·开发语言·kotlin
程序员卷卷狗5 小时前
JVM 调优实战:从线上问题复盘到精细化内存治理
java·开发语言·jvm
lly2024066 小时前
ASP Folder:深入解析其功能与使用技巧
开发语言
雪域迷影6 小时前
Go语言中通过get请求获取api.open-meteo.com网站的天气数据
开发语言·后端·http·golang·get
ysdysyn8 小时前
C# 进程管理实战:检查与启动EXE程序的完整指南
开发语言·c#
IDOlaoluo9 小时前
PHP-5.2.1.tar.gz 离线安装教程:从源码编译到配置的详细步骤(附安装包)
开发语言·php
2401_841495649 小时前
Windows 系统中ffmpeg安装问题的彻底解决
windows·python·ffmpeg·bug·语音识别·下载·安装步骤
code_ing-9 小时前
【Linux】命令行参数与环境变量
linux·c++·windows·笔记
wangjialelele9 小时前
Qt中的常用组件:QWidget篇
开发语言·前端·c++·qt