汇编语言基础笔记03
寄存器访问内存
内存中的数据排列: 字节数据,字形数据===>高位放高位,低位放低位
一个字型数据可以由两个连续的地址的内存单元组成
0 20H
1 4EH
2 12H
3 00H
问题3.1
地址0中存放的字型数据是多少? 4E20H
地址0中存放的字节数据是多少? 20H
地址2中存放的字节型数据是多少? 12H
地址2中存放的字型数据是多少? 0012H
地址1中存放的字型数据是多少 4EH
;高位放高位,低位放低位,内存的排列是0123456789…
例如:2比1高,所以2是高位.
cpu是通过内存地址去访问内存的,cpu跟内存读写练习
ds 段地址寄存器 访问数据用的
mov al,ds:[0] mov移动指令 cpu中的al寄存器,内存地址 偏移地址
mov al,ds:[1] 方括号是得到里面的内容
mov al,ds:[2] cpu从内存中读取了一个字节,al是八位寄存器
mov al,ds:[3] ;寄存器从内存中读取数据
mov bx,1000h
mov ds,bx
mov ax,ds:[0]
mov ax,ds:[1]
mov ax,ds:[2]
mov ax,ds:[3]
mov ds:[0],ax ; 寄存器数据写入内存
mov ds:[1],ax
mov ds:[0],al
mov ds:[1],ah
debug的写法:mov al,[0] 相当于[0]=ds:0
问题3.3
写出下面执行后 [寄存器] ax,bx,cx中的值
mov ax,1000H 物理地址 内容
mov ds,ax 10000H 23H
mov ax,ds:[0] 10001H 11H
mov bx,ds:[2] 10002H 22H
mov cx,ds:[1] 10003H 66H
add bx,ds:[1]
add cx,ds:[2]
;确定数据的长度,在ds:[0]地址中读取数据和写入数据.
写出下面指令执行后 [内存中] 的值
mov ax,1000h ;把1000H放到ax寄存器中
mov ds,ax ;把ax寄存器中的1000给ds段地址寄存器,确定ds段寄存器位置,确定内存段地址
mov ax,2c34
mov ds:[0],ax ;把ax的值放到内存ds:0中*
sub bx,ds:[2] ;把内存为ds:2的数据减去寄存器bx,然后拿到寄存器bx中
mov ds:[2],bx ;把寄存器bx的数据拿到地址ds:2的内存中
;这个要注意,一定要注意高位字型数据放高位,低位要放内存低位,也要注意字型数据或者字节数据,比如AX是字型数据,al是字节型数据.
数据安排:1000:0 01 02 03 04 00 00 00 00 00 00 00 00 00 00 00 00(字节型数据) AL
1000:0 00 01 02 00 03 00 04 00 00 00 00 00 00 00 00(字型数据) ax 需要两个连续的内存单元存放
ds 段地址寄存器 数据段地址寄存器
cs 指令段地址寄存器
====================================================================================================
汇编语言基础笔记03相关推荐
- 黑马程序员_java基础笔记(03)...面向对象
1:面向对象的概念,2 : 类和对象的关系,3 : 封装,4 : 构造函数,5 : this关键字,6 : static关键字, 7 : 单例设计模式,8 : 继承,9 : 抽象类,10 : 接口,1 ...
- MIPS汇编语言学习笔记23:if 语句分支指令
C语言 #include<stdio.h> int main() {int i = 3;if (i < 5){printf("yes!\n");}else{pri ...
- MIPS汇编语言学习笔记11:整数减法 (mult方法)
任务:整数相乘,并输出打印. 代码: .dataintA: .word 5intB: .word 2 .textli $v0, 1lw $a1, intAlw $a2, intBmult $a1, $ ...
- Maven-学习笔记03【基础-Maven标准目录结构和常用命令】
Java后端 学习路线 笔记汇总表[黑马程序员] 黑马程序员(腾讯微云)Maven基础讲义.pdf Maven-学习笔记01[基础-Maven基本概念] Maven-学习笔记02[基础-Maven的安 ...
- Ajax和JSON-学习笔记03【JSON_基础语法】
Java后端 学习路线 笔记汇总表[黑马程序员] Ajax和JSON-学习笔记01[原生JS方式实现Ajax] Ajax和JSON-学习笔记02[JQuery方式实现Ajax] Ajax和JSON-学 ...
- JQuery-学习笔记03【基础——DOM操作】
Java后端 学习路线 笔记汇总表[黑马程序员] JQuery-学习笔记01[基础--JQuery基础]--[day01] JQuery-学习笔记02[基础--JQuery选择器] JQuery-学习 ...
- JavaScript学习笔记03【基础——对象(RegExp、Global)】
w3school 在线教程:https://www.w3school.com.cn JavaScript学习笔记01[基础--简介.基础语法.运算符.特殊语法.流程控制语句][day01] JavaS ...
- Python 基础学习笔记 03
Python基础系列 Python 基础学习笔记 01 Python 基础学习笔记 02 Python 基础学习笔记 03 Python 基础学习笔记 04 Python 基础学习笔记 05 文章目录 ...
- 16位汇编语言学习笔记(1)——基础知识
文章目录 1.配置汇编学习环境 1.1 工具下载 1.2 配置环境 2. 汇编命令基础 2.1 简单使用 2.2 常用命令 3. 汇编语言基础 3.1 汇编语言程序与汇编程序 3.2 汇编语言程序的格 ...
最新文章
- python写出的程序如何给别人使用-涨姿势!这些小技巧让小白也可以写出更优雅的Python代码!...
- Docker在Linux上运行NetCore系列(一)配置运行DotNetCore控制台
- vs2012 发布网站时出现 sgen.exe 已退出 代码为 1
- 神经网络基础_反向传播_证明
- 给ubuntu换内核
- 华为又有大动作!继鸿蒙之后,即将发布全新操作系统OpenEuler欧拉
- Spring中事务使用
- mysql log error_MySQL日志之error_log
- html5 audio js控制进度,HTML5 audio标签使用js进行播放控制实例
- Wireshark网络封包分析软件——过滤表达式
- kubernetes资源对象--pod和job
- linux备份没有vmlinuz,解决file /isolinux/vmlinuz0 not found
- 基于DSP的主动降噪开发之三(CCS软件学习)
- 【理财】指数基金投资指南
- Docsify+github/gitee搭建个人博客
- 强化学习算法三个基线策略
- Android - xml动画,识别手势动作,代码抽取,获取手机SIM卡串号,获取联系人数据,开机广播,发送/解析短信,报警音乐
- 米思齐呼吸灯与可调节灯实验
- MySQL数据库改名
- 程序员职业生涯11个阶段