Excel表格网

汇编语言中清除屏幕语句是什么?

268 2024-03-10 02:22 admin   手机版

一、汇编语言中清除屏幕语句是什么?

只能写子程序或者宏。给你一个参考的:

CLEAR MACROpush dxpush cxpush bxpush axmov ah,6mov al,0mov bh,1fhmov cx,0mov dx,184fhint 10hpop dxpop cxpop bxpop axENDM DATA SEGMENT;此处输入数据段代码 DATA ENDS;STACK SEGMENT;此处输入堆栈段代码;STACK ENDSCODE SEGMENTASSUME CS:CODE,DS:DATAMAIN PROC FARMOV AX,DATAMOV DS,AX;此处输出一个字符MOV AH,2MOV DL,'5'int 21H;此处输入一个字符MOV AH,1INT 21H;清屏CLEAR;MOV AH,4CHINT 21HMAIN ENDPCODE ENDSEND MAIN

二、在汇编语言中NUM?

DATASEGMENT数据段开始DA1DB2,-3,-4,-5,34,-4,0,3,4,24第一个变量da1为字节类型dbCOUNTEQU$-DA1count是一个常量因为用了equ其值为$-da1,后面会解释NUMDB?num是变量名类型是db也就是字节其内容未知所以用了问号DATAENDS代表数据段结束以上是数据段定义代码段开始COSEGSEGMENTASSUMECS:COSEG,DS:DATA将各个段的首址放入对应的段寄存器ST:MOVAX,DATAst代表一个标号,也就是这一段程序的开始意思为start这个标号可以随意在汇编语言中如果出现冒号,则冒号前的字符串就是程序的标号movax,data意思是将数据段的首地址放入ax中MOVDS,AXmovds,ax就是将ax的内容放入数据段寄存器ds中由于段寄存只能进行16位的读写,因此需要用ax来倒一下MOVSI,OFFSETDA1将变量da1的偏移地址放入寄存器si中MOVCX,COUNT-1count=$-da1其中$为以da1为首址的数据段结束之后的下一个地址而da1是这个数据段的首地址也就是2的地址,count-1就计算了da1这段数据的字节数,由于每个数据都是字节类型,它实际代表的是以从2开始的数据个数XORBL,BLxor代表异或运算,bl内的值和bl自身做异或一定是等于一的EXCHG:MOVAL,[SI]exchg是一个标号,这一句是将si中的内容所指向的单元的数据放入al,也就是将2放入al中XORAL,[SI+1]si中的内容所指向的单元的下一个单元中的数据与al做异或实际就是相邻两个数作异或了在第一次循环时是2与-3异或00000010和11111101结果是0xff,放入alTESTAL,80Htest的功能是将两个数相与,但不进行赋值操作,这里是将al中的数与0x80相与,结果不为零JENEXTje代表为零跳转,上一步操作不为零,因此不跳到next而去执行incblINCBLinc代表自增,将bl的内容自增,bl内容从0增到1NEXT:INCSIsi的内容自增,在下一次循环中[si]的内容将会是-3而不是2,因为si的内容增了1,相当于指针的自增操作,指向下一个单元LOOPEXCHGloop的意思是如果cx中的内容不为零则跳转到标号处,标号是exchg则跳入exchgMOVNUM,BL当cx变为零的时候,也就是当遍历了da1为首址的数据段后终止循环,将bl的值送入num中,num是前面数据段定义的一个变量例行公事,终止这段汇编指令,通过21h号中断实现MOVAX,4C00HINT21HCOSEGENDS代码段结束ENDSTst标号结束

三、在c语言中暂停的语句是什么?

可以通过system("pause");实现暂停,应包括<stdlib.h>头文件。还可以通过使用getch()和getchar()函数实现,注意应该相应地包括<conio.h>和<stdio.h>文件,getch()为非标准函数,需要注意程序的移植性。

四、请教CASE语句在C语言中的用法?

这是初学者经常会无法理解的一点!

switch(i){ case 0:printf("%d",i);break;/*这里如果没有加上break语句,程序将会在不作继续判断i值的情况下,执行下面其它case后面(包括default)的语句*/ ...}因此,当i=0时,将会执行所有三个printf函数;当i=1时,执行default处的printf函数;当i=2时,执行后两个printf函数,所以输出共6个i值,结果为:

000122switch(表达式){ case常量表达式1: 语句1; case常量表达式2: 语句2; … case常量表达式n: 语句n; default : 语句n 1; } 其语义是:计算表达式的值。

并逐个与其后的常量表达式值相比较,当表达式的值与某个常量表达式的值相等时, 即执行其后的语句,然后不再进行判断,继续执行后面所有case后的语句。

如表达式的值与所有case后的常量表达式均不相同时,则执行default后的语句。

void main(){ int a; printf("input integer number: "); scanf("%d",

五、a=b+c在c语言中赋值语句正确吗?

不正确。

1、赋值一般形式为:变量=表达式,例如a=5。

2、变量=(变量=表达式),a=(c=5)也是合理的,即先执行c=5,再执行a=c;

3、变量=变量=…=表达式;例如:a=b=c=d=e=5;按照赋值运算符的右接合性,因此实际上等效于:

4.、注意赋值表达式和赋值语句的区别。赋值表达式是一种表达式,它可以出现在任何允许表达式出现的地方,而赋值语句则不能。

六、c语言中casebreak语句用法?

C语言中break语句有以下两种用法:

1、当break语句出现在一个循环内时,循环会立即终止,且程序流将继续执行紧接着循环的下一条语句。

2、它可用于终止switch语句中的一个case。如果使用的是嵌套循环(即一个循环内嵌套另一个循环),break语句会停止执行最内层的循环,然后开始执行该块之后的下一行代码。

七、C语言中if语句的使用?

c语言提供了三种形式的if语句:

1、if(表达式)语句。

例如:if(x>y)printf("%d",x);

此时,如果表达式为真,则执行printf语句。

2、if(表达式)语句1 else 语句2

例如:

if(x>y)printf("%d",x);

else printf("%d",y);

此时,如果x>y成立为真,则执行语句printf("%d",x),然后直接跳过else,同时也跳过语句printf("%d",y),去执行之后的语句。

如果x>y不成立为假,则不执行语句printf("%d",x),执行语句printf("%d",x)。

3、if(表达式1)语句1

else if(表达式2)语句2

else if(表达式3)语句3

else if(表达式m)语句m

else 语句 n

此时,哪个表达式为真,则运行哪个if后面的语句。如表达式3成立为真,执行语句3。

在每个语句中,可以有多个语句,但需要加上大括号。

例如:

for(i=1;i<10;i++) if(i>max) max=i; else if(i<min) min=i; //到这for语句结束,第二个if是else 里面的,它也只能做用到第一个分号,下一个分号就不在循环里,printf("%d",i); 这样改:for(i=1;i<10;i++) {if(i>max) max=i; else if(i<min) min=i; printf("%d",i); }这样就好了,,,printf就在for循环体里面了,。就是加一个大括号

八、C语言中怎样跳出if语句?

return是一定可以的。如果是在循环中,可以使用break,continue。 没有专门针对if的跳出语句。 如果有这种跳出需求,可以考虑将这个if语句和其他被跳出的部分放在一个仅循环一次的循环结构中,这样就可以利用break来跳出。

九、C语言中if else语句使用?

在C语言中,if-else语句用于根据条件执行不同的代码块。它的语法是:if (条件) { 代码块1 } else { 代码块2 }。当条件为真时,执行代码块1;当条件为假时,执行代码块2。if-else语句可以嵌套使用,用于处理多个条件。它是控制流程的重要工具,可以根据不同的条件执行不同的操作,实现程序的灵活性和逻辑判断。在使用if-else语句时,要注意条件的布尔值和代码块的正确书写,以确保程序的正确执行。

十、c语言中while语句举例?

C语言中do-while语句的2种写法示例

while循环和for循环都是入口条件循环,即在循环的每次迭代之前检查测试条件,所以有可能根本不执行循环体中的内容。C语言还有出口条件循环(exit-condition loop),即在循环的每次迭代之后检查测试条件,这保证了至少执行循环体中的内容一次。这种循环被称为do while循环。

顶一下
(0)
0%
踩一下
(0)
0%
相关评论
我要评论
用户名: 验证码:点击我更换图片
上一篇:返回栏目