汇编:将指定的内存中连续N个字节填写成指定的内容
1.loop指令实现
1 ;=============================== 2 ;循环程序设计 3 ;将制定内存中连续count个字节填写成指定内容(te) 4 ;loop指令实现 5 DATAS SEGMENT 6 string db 'a test string','$' 7 te dw 'Q' ;用于替换的字符(字) 8 ; te db 'Q' ;用于替换的字符(字节) 9 count db 5 ;连续5个字节 10 DATAS ends 11 CODES SEGMENT 12 ASSUME CS:CODES, DS:DATAS 13 START: 14 mov AX,DATAS 15 mov DS,AX 16 17 xor cx,cx 18 xor ax,ax 19 mov si,offset string 20 ; mov al,te ;(字节) 21 mov ax,te ;用于替换的字符放入按下中 22 mov cl,count;设置循环次数 23 lp: 24 ; mov [si],Al 25 ; inc si ;(字节) 26 mov [si],Ax ;替换原内容 27 add si,2 ;带操作的内存的偏移地址增加 28 loop lp 29 print: 30 lea dx,string 31 mov ah,09H 32 int 21h 33 34 exit: 35 mov ah,4ch 36 int 21H 37 CODES ends 38 end START
2.条件转移指令
1 ;=============================== 2 ;循环程序设计 3 ;将制定内存中连续count个字节填写成指定内容(te) 4 ;条件转移指令实现 5 DATAS SEGMENT 6 string db 'a test string','$' 7 te db 'Q' ;用于替换的字符 8 count db 5 ;连续5个字节 9 DATAS ends 10 CODES SEGMENT 11 ASSUME CS:CODES, DS:DATAS 12 START: 13 mov AX,DATAS 14 mov DS,AX 15 16 xor cx,cx 17 xor ax,ax 18 mov si,offset string 19 mov al,te 20 mov cl,count 21 flag: 22 mov [si],al 23 inc si ;si自增1 24 dec cl ;cl自减1 25 cmp cl,00h 26 ja flag ;cl大于0跳转 27 print: 28 lea dx,string 29 mov ah,09H 30 int 21h 31 32 exit: 33 mov ah,4ch 34 int 21H 35 CODES ends 36 end START
转载于:https://www.cnblogs.com/roseAT/p/10246754.html
汇编:将指定的内存中连续N个字节填写成指定的内容相关推荐
- C语言:从键盘中输入字符串,追加填写到指定文件中
/*从键盘中输入字符串,追加填写到指定文件中*/ #include <stdio.h> #include <string.h> #include <ctype.h> ...
- C语言面试题--已知整形变量在内存中占4个字节的空间,现有一无符号整形变量a = 0x20190125,请编写函数求出变量a所占内存每个字节的值是多少?
已知整形变量在内存中占4个字节的空间,现有一无符号整形变量a = 0x20190125,请编写函数求出变量a所占内存每个字节的值是多少? 用共用体方法:共用体内的空间是公用的,每一个成员都可以访问共用 ...
- Object o = new Object()在内存中占几个字节
CAS: Compare and Swap,即比较再交换. jdk5增加了并发包java.util.concurrent.*,其下面的类使用CAS算法实现了区别于synchronouse同步锁的一种乐 ...
- 向内存中连续存入数据_内存节省到极致!Redis中这个数据结构,值得每个程序员了解...
在之前我们介绍了,Redis有五种基础数据类型,分别是String,Set,List,Hash与SortSet. 今天我们又学习了一个命令,我们可以使用DEBUG OBJECT key查询Redis中 ...
- 向内存中连续存入数据_实例35_在Excel中按条件筛选数据并存入新的表
老板想要看去年每月领料数量大于1000的数据.手动筛选并复制粘贴出来,需要重复操作12次,实在太麻烦了,还是让Python来做吧.磨刀不误砍柴工,先整理一下思路: 1. 读取原表,将数量大于1000的 ...
- 汇编:转移目的地址在内存中
assume cs:code, ds:data, ss:stack; 设置数据段 data segmentdb 128 dup (0) data ends; 设置栈段 stack segment st ...
- C语言/C++中字符串中英文字母大写转化成小写详细内容
字符串大写转化成小写: 先建立一个字符数组,char a[22]; 在将字符数组里面放内容,gets_s(sp);再将这个字符数组存放在b变量(指针变量)中; 这个b变量的类型是cahr*; 最后,将 ...
- C语言——深度剖析数据在内存中的存储
大家好!我是保护小周ღ,本期为大家带来的是深度剖析数据在内存中的存储,不知道,大家学了这么久C语言,有没有想过一个问题,我们在程序设计中的数据是怎么在计算机中存储的?我们都知道 一个整型数据 int ...
- 在内存中建立文件_磁盘与文件,搞懂它
说一说计算机中的非常重要的两个东西磁盘和文件.搞清楚这两个东西有利于我们理解高级语言中关于I/O流操作的设计.它就像一把大杀器一样,无往而不利. 想一想,磁盘作为一个电脑中的硬件设备,操作系统是如何管 ...
最新文章
- java访问map_java.map使用
- ARKit从入门到精通(3)-ARKit自定义实现
- Django(part25)--字段查询
- python包导入详细教程脚本之家_python包导入详细教程脚本之家_Python使用import导入本地脚本及导入模块的技巧总结......
- Android TextView 显示HTML加图片
- 12. vim 编辑器
- 三菱modbusRTU通讯实例_modbus通讯协议详解 | 每位工控人都应该了解
- Informix ODBC 设置
- java歌词解析器_Java LRC 歌词解析
- VS2003安装包和方法
- 圆柱体积怎么算立方公式_圆柱体积计算公式 怎么计算
- SpringMVC源码学习
- MATLAB遗传算法工具箱安装包及安装方法(图解)
- Linux:库函数:libc: glibc
- IDEA好用的插件推荐
- 计划FM为人人网提供首个开源Ruby SDK
- SEO灰帽手段常用四种手法,仅供参考
- Visual Studio的正确打开方式|9中种常见错误
- 鸿蒙华为手机2020上市,华为12月双喜临门:Mate40上市,发布鸿蒙手机,2020完美收官!...
- 伦敦帝国理工学院创业大赛,视网膜诊断术成最大赢家!
热门文章
- 拳王公社:没钱没资源没人脉!网络创业凭副业年赚20W+!
- 拳王虚拟项目公社:解除网站禁止复制的插件,Simple Allow Copy V 0.8.2
- 不可小视的贝叶斯(一)
- IComparable和Icomparer接口
- AudioRecord 采集音频PCM数据
- 我的docker随笔7:docker容器与主机之间文件拷贝
- 【java】java 多线程 异步计算 FutureTask 源码详解
- 【Flink】Flink 源码阅读笔记(15)- Flink SQL 整体执行框架
- 【kafka】kafka NoSuchElementException ArrayDeque getLast 压缩方式不同
- 【ElasticSearch】ElasticSearch 嵌套查询:如何搜索嵌入的文档