当前位置:网站首页>匯編語言(5)寄存器(內存訪問)
匯編語言(5)寄存器(內存訪問)
2022-06-25 17:23:00 【Day-3】
1 內存中字的存儲
CPU中,用16比特寄存器來存儲一個字。高八比特存放高比特字節,低八比特存放低比特字節。
字單元概念,即存放一個字型數據(16比特)的內存單元,由兩個地址連續的內存單元組成。高地址內存單元中存放字型數據的高比特字節,低地址內存單元中存放字型數據的低比特字節。
2 DS和[address]
mov bx,1000H
mov ds,bx
mov al,[0]
CPU自動取ds中的數據為內存單元的段地址。
CPU不支持直接將數據送入段寄存器的操作。
3 字的傳送
mov bx,1000H
mov ds,bx
mov ax,[0] ;1000:0處的字型數據送入ax
mov [0]cx ;cs中的16比特數據送到1000:0處
4 mov add sub指令
mov 段寄存器,寄存器
mov 寄存器,段寄存器
mov 內存單元,段寄存器.
mov 段寄存器,內存單元
5 數據段
將123B0H~123B9的內存單元定義為數據段。現在要累加這個數據段中的前3個單元中的數據,代碼如下:
mov ax,123BH
mov ds,ax ;將123BH送入ds中,作為數據段的段地址
mov al,0 ;用al存放累加結果
add al,[0] ;將數據段第一個單元(偏移地址為0)中的數值加到al中
add al,[1] ;將數據段第二個單元(偏移地址為1)中的數值加到al中
add al,[2] ;將數據段第三個單元(偏移地址為2)中的數值加到al中
數據和程序在計算機中都是以二進制的形式存放的,
在區別程序和數據時,關鍵是看段地址,如果段地址是ds
段,說明該內存存放的是數據,如果段地址是cs段,說明該內存
存放的是指令。
6 棧
可以將棧看做一個只有一個開口的盒子。
棧有兩個基本操作:入棧和出棧。
PUSH(入棧)POP(出棧)。
任何時刻SS:SP指向棧頂元素。
關於棧越界問題,CPU只考慮當前的棧在何處、當前執行的命令是哪一條。
當一個段中存放數據,那麼就是“數據段”,存放代碼,就是“代碼段”,存放棧,那麼就是“棧段”。
7 用機器指令和匯編指令編程
(1)關於D命令。
(2)在E、A、U命令中使用段寄存器。
在這些命令中,,也可以同D命令一樣,用段寄存器錶示內存單元的段地址。
(3)Debug的T命令在執行修改寄存器SS的指令時,下一條命令也緊接著被執行。
边栏推荐
- [Jianzhi offer II 091. painting the house]
- How does social e-commerce operate and promote?
- Redis 的PSYNC命令
- 国泰君安证券靠谱吗?是否合法?开股票账户安全吗?
- 数据搬迁最佳实践之使用CDM搬迁线下MySQL到DWS
- pytorch官方文档学习记录
- Using pywebio testing, novice testers can also make their own testing tools
- 【剑指 Offer II 091. 粉刷房子】
- Ten thousand volumes - list of Dali wa
- Tensorflow old version
猜你喜欢
协议和分层次
软考中的嵌入式系统设计师为什么考的人少?
Learning Tai Chi makers - mqtt (I) what is mqtt
Vscode plug-in self use
芝士糖豆打造AR潮玩新体验
Pytorch official document learning record
Wechat official account server configuration
好胖子带你学Flink系列-Flink源码剖析第一集Standalone启动脚本分析
Why does MySQL limit affect performance?
Mathematical modeling - linear programming
随机推荐
学习太极创客 — MQTT(三)连接MQTT服务端
软考中级和高级选哪个比较好?
n-queens problem
"Podcast with relish" 386 Yuan Tang Hua Yuan Shi: who is not a "Mr. White character"?
STM32 hardware error hardfault_ Handler processing method
try with resource
CVPR小目标检测:上下文和注意力机制提升小目标检测(附论文下载)
Solution to the problem of incorrect clock in FreeRTOS kernel
【编译原理】概述
Next. JS hot update markdown file change
2022-06-17 advanced network engineering (x) is-is-general header, establishment of adjacency relationship, IIH message, DIS and pseudo node
2021年5月云南省网络空间安全比赛赛题复盘
国泰君安证券靠谱吗?是否合法?开股票账户安全吗?
学习太极创客 — MQTT(二)MQTT 基本原理
ES6 knowledge points
Mathematical modeling -- integer programming
Automatic submission for the next education day
「津津乐道播客」#386 原汤话原食:谁还不是个“白字先生”?
Ten thousand volumes - list of Dali wa
通过深度可分离卷积神经网络对七种表情进行区分