双重循环打印ASCII的10H到FFH

C语言双重嵌套循环之如何用for写出ABCDEFGHI C语言基础入门循环嵌套 阅读详情

该程序涉及到双重循环,这里考察到循环时对CX寄存器的压栈以及出栈,首先写出外部循环,并对CX寄存器赋值之后,写出相应的操作,当写内部循环的时候,也是需要为CX寄存器赋值,如果不进行保护,则会覆盖外部循环的CX寄存器的值,这里就需要保护外部循环的相关数据(这里相关数据的意思就是外部循环中用到的寄存器的内容,在内部循环之中也有用到),所以要通过PUSH压进栈保护起来,例如,PUSH CX ,则可以对CX寄存器重新赋值,书写到内部循环之中,当内部循环结束之后,POP CX,将保护的CX寄存器的值弹出栈,这里的CX寄存器中的值,就是之前保护起来之前的值,运用PUSH,POP指令值书写多重循环的关键

DATAS SEGMENT
    ;此处输入数据段代码  
DATAS ENDS

STACKS SEGMENT
    ;此处输入堆栈段代码
STACKS ENDS

CODES SEGMENT
    ASSUME CS:CODES,DS:DATAS,SS:STACKS
START:
    MOV AX,DATAS
    MOV DS,AX
   	
	MOV DX,0000H ;将DX,CX初始化
	MOV CX,0000H
	MOV DL,10H ;打印从10H到FFH的ASCII码(保存第一个要打印的ASCII码)
	
	MOV CX,000FH ;外层循环(行数)
LOOP_WAI:
	PUSH CX ;保存外循环的次数
	MOV CX,0010H ;内层循环次数,就是列数
	MOV AH,02H

LOOP_NEI:
	INT 21H ;打印ascll
	PUSH DX ;这里为了美观打印空格,要为DL赋值,则需要将DX内容保护起来
	MOV DL,00H
	INT 21H ;输出空格
	
	POP DX
	INC DX ;使DX的内容自加1
	LOOP LOOP_NEI
	;此时这里已经进行完一次内循环
	
	POP CX ;弹出之前保存起来的外部循环的次数
	PUSH DX ;保存DX,因为要打印出换行
	MOV DL,0DH
	INT 21H
	MOV DL,0AH
	INT 21H
	
	POP DX ;打印完毕之后弹出保护起来得DX
	LOOP LOOP_WAI
   	
    MOV AH,4CH
    INT 21H
CODES ENDS
    END START


上述源代码中注释已经清楚了,希望对你有所帮助
这就是运行结果:


Python、Selenium实现问卷星自动填写(内含适配个人问卷的方法) 使用Python、Selenium实现问卷星自动填写,内含适配个人问卷的方法。 阅读详情

相关推荐

物理机centos7系统重启后直接进入dracut

Warning: /dev/centos/root does not exist Warning: /dev/mapper/centos-root does not exist 在shell命令行执行以下: dracut:/# lvm vgscan dracut:/# lvm vgchange -ay dracut:/# exit 之后可以正常进入系统(测试正常)。 但是重启之后依然会进入dracut模式,永久解决如下: 查看kernel文件 [root@ecs ~]# ls -ltrh /boot

魏志标的博客 1万+

JAVA好学——ASCII、Unicode、UTF

一、ASCII码 ASCII 是用来表示英文字符的一种编码规范。每个ASCII字符占用1 个字节,因此,ASCII 编码可以表示的最大字符数是255(00H—FFH)。其中最高位为1 的另128 个字符(80H—FFH)被称为“扩展ASCII”,一般用来存放英文的制表符、部分音标字符等等的一些其它符号。对于英文字符来说,255可以完整的表达包括字母、数字以及符号在内的大部分日常字字符,但是对于中文...

cyl13989725676的博客 344

RK806S PMIC电源管理芯片调试

当点按PWRON按键时,rk806上电开始启动bootloader和uboot,在执行到此处时检测到是由于按键启动的,所以0x5d的值是0x80,0x74的值是0x80,在一般情况下,mode都默认是none的,所以mode值为11,因此就进入了我们的if判断,若是由于按键启动的,则直接调用rk8xx_shutdown函数关掉,进入这个函数会看到实际是通过i2c给0x72寄存器的BIT(0)写1,使其关机。当SoC在12V电源已经接入,且处于关机状态时,使用PWRON按键开机,0x74的值则为0x80。

Y1anoohh的博客 2539

用双重循环编程打印以下图形

用双重循环编程打印以下图形: ABCDEF BCDEF CDEF DEF EF F

YINQIUHAO的博客 5192

【5G NB-IoT NTN】3GPP R17 NB-IoT NTN介绍_nbiot ntn

你的支持,我的动力;祝各位前程似锦,offer不断,步步高升!!!” />你的支持,我的动力;祝各位前程似锦,offer不断,步步高升!!!更多资料点击此处获qu!!

2401_83703866的博客 3162

MatLab:数字图像处理实验

图像处理基本处理实验目的实验环境实验内容题目一代码结果题目二平移平移代码平移结果水平镜像水平镜像代码水平镜像结果垂直镜像垂直镜像代码垂直镜像结果放大放大代码放大结果缩小缩小代码缩小结果旋转旋转代码旋转结果双线性旋转旋转代码旋转结果 实验目的 1、熟悉并掌握MATLAB工具的使用;  2、实现图像的读取、显示、存储、平移、镜像、放大、缩小及旋转操作; 3、掌握常用的插值方法,并了解其优缺点。 实验环境 MatLab2016 实验内容 题目一 读入一幅RGB图像,变换为灰度图像和二值图像,并在同一个窗口内分别显

luoyao_的博客 9694

二重循环打印不同类型图形

文章目录一 打印正方形的流程1.1 初始命令结果(一列5个*)1.2 修改为不换行输出 (变成一行5个*)1.3 增加外层循环条件(变成一行15个*)1.4 增加换行(改变成5行*)1.5 打印正方形 (在内循环中加入间隔空行)二 打印矩形2.1 第一种:设置长宽不同2.2 第二种:设置横向没有间隔三 ECHO 命令常用选项四 打印直角三角形4.1 左下4.2 右上4.3 左上4.4 右下五 打印等腰三角形六 打印等腰梯形七 打印菱形7.1 seq命令解析八 九九乘法表8.1 递减式8.2 横向式 一 打印

weixin_50344811的博客 1293

基于CNN网络的轴承故障诊断

内容参考:《基于卷积神经网络的轴承故障 诊断算法研究》–张伟 代码参考: https://github.com/AaronCosmos/wdcnn_bearning_fault_diagnosis 1 背景: 基于信号处理的特征提取+分类器的传统智能诊断算法,对专家经验要求高,设计耗时且不能保证通用性,已经不能满足机械大数据的要求。提出使用基于卷积神经网络智能诊断算法来自动完成特征提取以及故障识别。 1.1 挑战 机电产品故障诊断面临的挑战,有三大特点: (1)数据量大,专业分析人员的数量严重不足,仅依靠人

weixin_45679938的博客 7万+

输出ASCII码表(循环)

##利用循环语句输出ASCII码表 又是一次上机作业。。。 先来说一下思路:表是二维,所以是套两个循环,然后注意输出范围32-126。 上代码 #include<stdio.h> int main() { int i,n,j=30; char p; printf(" "); for (i = 0; i <= 9; i++) { printf("%4d", i)...

TheGodOfCloud的博客 3062

SAP ERP与金蝶云星空的集成案例(新能源光伏行业)

通过建设PLM、SAP、MES、WMS、SCADA、EAM等多系统集成的工业互联网平台作为数字化工厂的控制中枢,不仅可以实现人员、设备、物料、工艺参数、产品等生产全流程追溯管理,同时也可以根据数据采集进行生产现场的控制调节,最大程度降低能耗水平。销售订单创建下推金蝶采购订单创建修改、销售订单创建下推金蝶销售订单创建修改、销售发货过账下推金蝶采购入库单、销售发货过账下推金蝶销售出库单:在SAP ERP系统创建销售订单、销售发货过账单后推送到云星空系统,进行采购/销售订单的创建修改、完成物料的入库和出库流程。

集信通 1615

怎样让你的论文看起来“像人写的”?只用三招直接去除AI味(附提示词)

当然如果你在实际使用中还有其他需求,比如降重润色、改写翻译等,也可以结合七哥的专业写作平台来辅助,这个高级学术平台已经内置了ChatGPT4o、ChatGPT4.1、Claude3.7、满血版DeepSeek-R1等AI大模型,帮你写文献综述、干课题申报、写论文等学术任务绝对每一点问题。比如我自己的一套学术写作平台,其中的“降重与润色”模块整合了多种GPTs应用,除了能帮助调整语言风格、避免雷同表达,还可以顺带降个重,对于提升学术文本的整体质量还是非常有用的。一、为什么用AI写出来的文章会有AI味?

智能AI让学术科研更容易 1680

汇编语言输出换行_汇编语言实验(一)——打印ASCII表

目录:空山新雨后:汇编语言学习笔记(目录)​zhuanlan.zhihu.com题目:1、按15行×16列的表格形式显示ASCII码为10H-100H的所有字符,即以行为主的顺序将ASCII码递增的顺序依次显示对应的字符。2、每16个字符为一行,字符之间以空白符隔开。代码:datas segment newline db 0ah, 0dh, '$' space db ' ', '$' da...

weixin_39568653的博客 4184

【NLP】第十章:位置编码Positional Encoding

前面讲RNN时一般都会有一个ht的输出,这个输出就是样本与样本之间的信息,而且RNN是时序循环的,所以RNN本身的结构,在物理上,就自带词的前后顺序信息的。比如词never,不管never本身的词向量是什么,只要你在序列中排第一个位置,你的位置向量就是[0,1,01],你排第三个位置,你的位置向量就是[0.9,-0,4,0.2,1.0]。也所以,你可以理解为:embedding后的词嵌入,PE按照每个样本在sequence中的位置,把embedding后的词嵌入给扭转后,才送入attention的。

因为热爱所以坚持 1917

从8086CPU寻址到Debug实战:手把手带你用王爽《汇编》题库玩转汇编底层

本文深入解析8086CPU寻址机制与Debug工具实战技巧,结合王爽《汇编》题库,手把手教你掌握汇编语言底层编程。从物理地址计算到标志寄存器应用,再到程序结构优化,提供全面的汇编学习路径和Debug实战案例,帮助读者快速提升汇编编程能力。

weixin_30315905的博客 167

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

汇编语言学习笔记

本文系统整理了汇编语言的核心知识与调试实践,分为两大板块:第一部分为“汇编语言学习笔记”,包含思维导图、寄存器分类、指令集概览、Debug常用命令及调试流程;第二部分为“小甲鱼课程笔记”,详细记录了从基础知识到高级应用的17章内容,涵盖CPU工作原理、内存访问、程序结构、中断处理、端口操作及BIOS编程等核心主题,并附有大量代码示例与实验指导,是学习8086汇编语言的实用参考资料。

qq_43709190的博客 463

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

请利用双重循环编程输出下面的图案(Java)

题目 请利用双重循环编程输出下面的图案: * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 分析 这种编程题一般分为两个部分:计算每行的空格数和星星数。 这里上下对称,所以可以分一半来实现,另一半就直接用就行了。 我们分析上一半:可以看到从第三行开始星星...

Felicity的博客 1万+

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

多重循环打印图形————14.用*打印图形

要求说明:用*打印图形如下,***** *****  *****   *****    *****//用*打印图形#include &lt;stdio.h&gt;int main(int argc, char **argv){    char *a  = "*****";               //定义一个字符串“"*****"    int i,j;    for(i = 0; i &lt...

stormwangw的博客 844

计算机组成原理独立模式f0h与10h,计算机组成原理练习题10-(自动保存的)

(2008H-2001H=07H)A. 05H B. 06H C. 07H D. F7H E. F8H F. F9H17.在存储器堆栈中,保持不变的是 C 。(栈指针随着数据的进出而增减,栈顶和栈中(有这个名词吗?)会随之变化。)A. 栈顶 B. 栈指针 C. 栈底 D...

weixin_39582656的博客 2544

汇编实验题之用表格形式显示ASCII字符

实验题目_用表格形式显示ASCII字符SMASCII 一、实验目的 学习用汇编语言设计与编写循环程序 二、实验要求 按15行X16列的表格形式显示ASCII码为10H一100H的所有字符,即以行为主的顺序及ASCII码递增的次序依次显示对应的字符。每16个字符为一行,每行中的相邻两个字符之间用空白符(ASCII为0)隔开。 三、实验提示 (1)显示每个字符可使用功能号为 02 的显...

mmdev 1658

打印ASCII编码32~126之间的95个字符

public class PrintAscii {  public static void main(String args[])  {   String sTemp="";   for(int i=32;i   {    sTemp=i    System.out.print(sTemp+"="+(char)i+" ");   //强制类型转换    if((i-31)%8==

xiaoyu714543065的专栏 4396

用汇编语言编写程序打印ASCII表

打印一个ASCII表在高级程序设计语言中是一个非常简单的程序,但是用汇编又该如何编写呢? 一、设计思路 我们可以按15行*16列的表格形式显示ASCII码为10H一100H的所有字符,即以行为主的顺序及ASCII码递增的次序依次显示对应的字符。每16个字符为一行,每行中的相邻两个字符之间用空白符(ASCII为0)隔开。 显示每个字符可使用功能号为02的显示输出功能调用,使用方法如下:...

810364804 2579

利用for循环打印ASCII码表

打印ASCII码for循环 操作课上的 #include<stdio.h> int main() { int i; for(i = 0;i <=88;i++) printf("%d %c \n",i,i);//逐个打印出0-88的ASCII码及其对应的字符 }

weixin_61862430的博客 1709

后缀数组应用小结

前言 之前学了后缀数组,这真是一个神奇的东西。早就想总结一些SA的应用,但一直没时间,现在终于抽出空来写一下自己的心得。 本文只讨论后缀数组的一些应用,不一定全面,仅供参考 还不会后缀数组的同学请自学后再看本文,这里不再赘述后缀数组的基础实现

Akakii的博客 6002

如何用C语言打印出ASCII码表

当一个int型变量需要以数字形式打印出来的时候,就用%d;需要以字符形式打印出来的时候,就用%c,故此我们可以打印出ASCII码表 int i; for(i = 0;i <=127;i++) { printf("%d %c \n",i,i);//逐个打印出0-127的ASCII码及其对应的字符 } 效果: ...

汇东的博客 1万+
上一篇: 进程模拟生产者-消费者问题
下一篇: 简单地处理机的调度算法(先来先服务算法)
coderlyf
博客等级 码龄10年 25粉丝 17原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值