Ⅰ Access 二级的一道计算题,求过程
首先说下,你的这个程序写的有点错告者指误嫌州
Next 1 这条是不对袜配, 应该改为 next i
我说下
for i = 1 to 10 step 2
.....
next i
执行过程是这样的
初值=循环变量----循环变量与终值比较----语句块----循环变量加步长----循环变量与终值比较
下面说下这个程序的过程
循环次数 i的值 s的值
1 1 1
2 4 2
3 10 3
你可能没理解: 步长是在执行next i 这句后才加上的
Ⅱ 已知程序段:m=5 n=1 while m>0 n=n*m m=m-1 print(n)
已知程序段:
m=5
n=1
while m>0
n=n*m
m=m-1
print(n)
运行后的输出是120
程序段(Program segment)就是一段程序,可以是一个子过程SUB,一个函数FUNCTION,或者是面向对象程序设计中的一个方法。
释义
程序段 就是一段程序(可以是一个子过程SUB,一个函数FUNCTION(用面向对象的观点或称为方法))
程序都是从上到下施行的。
格式
N○○○○G○○X○○.○Y○○.○M○○S○○T○○;
N:程序段顺序号,程序段号可以省略
G:准备功能
X,Y:运动尺寸
M:辅助功能
S:主轴功能
T:刀具功能
;:程序段结束
顺序号的顺序是任意的好信空,其间隔也可友瞎不等。可以全部程序段都带有顺序号,也可以在重要坦悔的程序段带有。但按一般的加工顺序,顺序号要从小到大。在程序的重要地方带上顺序号是方便的(例如,换刀时,或者工作台分度移到新的加工面时等等)。注:因为程序号不允许是0,为了使顺序号与程序号通用,顺序号也不能用0。
Ⅲ 汇编高手帮忙做题
现在我没有时间,先回答一题运衫蚂。如果要其它答案的话,可以加我的Q369881068,但是要给分我哦!
第一题:
DATA SEGMENT
WANG DB 1,-2,3,4,5,6,7,8,9,10 ;现在只放10个数
XIAO DB 10 DUP (?)
DATA ENDS
CODE SEGMENT
ASSUME CS: CODE, DS: DATA
START: MOV AX,DATA
MOV DS,AX
MOV CX,10
MOV BX,0
LEA SI,XIAO
L:MOV AX,0
MOV AL,WANG[BX]
SHL AL,1
JC TURN
MOV AL,WANG[BX]
JMP Q
TURN:MOV AL,WANG[BX]
NEG AL ;负数换旁埋成正数
Q:MOV [SI],AL
INC SI
INC BX
LOOP L
MOV AH,4CH
INT 21H
CODE ENDS
END START
结束塌隐。
Ⅳ 已知程序段:m=5 n=1 while m>0 n=n*m m=m-1 print(n)
这段程序的运行结果会输出从5的阶乘到1的阶乘颤族的值,具体输出如下茄中弊:
120
24
6
2
1
程序使用了while循环,每次迭代都计算了m和n的值,并通过将n乘以m得到n的阶乘。每次循环后,m的值减1,直到其减少到0,循环停止。在此过程中,程序输出n的值,即当前迭代中m的阶乘。
因此,程序的输出是5!、4!、3!、2!和1!的值,分别培世为120、24、6、2
Ⅳ 汇编语言 已知程序段写出 cl 和 al 的值
这个程序答含是求拍薯table中的最小值,运行后清贺笑AL=12H,CL=0
Ⅵ C语言基础题,帮忙做下 谢谢
26 已知int x=1,y;执行下述语句后变量x的值是__C_。
y=++x>5&&++x<10;
A) 1 B) 2 C) 3 D) 4
27 为判断字符变量c的值不是胡册数字也不是字母时,应采用下述表达式____。
A) c<=48||c>=57&&c<=65||c>=90&&c<=97||c>=122
B) !(c<=48||c>=57&&c<=65||c>=90&&c<=97||c>=122)
C) c>=48&&c<=57||c>=65&&c<=90||c>=97&&c<=122
D) !(c>=48&&c<=57||c>=65&&c<=90||c>=97&&c<=122)
28 已知 int a[3][2]={3,2,1};则表达式"a[0][0]/a[0][1]/a[0][2]"的值是__D_。
A) 0.166667 B) 1 C) 0 D) 错误的表达式
29 已知 int x=1,y=1,z=1;表达式"x+++y+++z++"的值是__C__。
A) 3 B) 4 C) 5 D) 表达式错误
30 用十进制表示表达式"12|012"的值是___D_。
A) 1 B) 0 C) 12 D) 14
31 已知以下程序段:
int a=3,b=4;
a=a^b;
b=b^a;
a=a^b;
则执行以上语句后a和b的值分别是__A__。
A) a=3,b=4 B) a=4,b=3 C) a=4,b=4 D) a=3,b=3
32 在位运算裤辩宏中,操作数每右移一位,其结果相当于_B__。
A) 操作数乘以2 B) 操作数除以2
C) 操作数除以16 D) 操作数乘以16
33 已知 char a=222;执行语句a=a&052;后,变量a的值是_A___。
A) 222 B) 10 C) 244 D) 254
34 已知二进制数a是00101101,如果想通过整型变量b与a做异或运算,使变量a的高4位取反,低4位不变,则二进制数b的值应是__A__。
A) 11110000 B) 00001111 C) 11111111 D) 00000000
35 已知 int a=15,执行语句a=a<<2以后,变量a的值是__C__。
A) 20 B) 40 C) 60 D) 80
36 已知int x=5,y=5,z=5;执行语句x%=y+z;后,x的值是__C__。
A) 0 B) 1 C) 5 D) 6
37 使用语句scanf("x=%f,y=%f",&x,&y);输入变量x、y的值(□代表空格),正确的输入是__C__。
A) 25,2.4 B) 25□2.4 C) x= 25,y=2.4 D) x= 25□y=2.4
38 下列循环语句中有语法错误的是__C__。
A) while(x=y) 5; B) while(0) ;
C) do 2;while(x==b); D) do x++ while(x==10);
39 已知int x=(1,2,3,4);变量x的值是__A__。这个正则表达式??
A) 1 B) 2 C) 3 D) 4
40 表达式sizeof(double)是 。 C
A) 函数调用 B) double型表达式
C) int型表达式 D) 非法表达式
41 执行语句printf("2:%d,",printf("1:%d,",scanf("%d",&x)));以后的输出结果是___A_。
A) 2:1,1:1, B) 1:1,2:1, C) 2:4,1:1 D) 1:1,2:4,
42 已知:int x,y;double z;则以下语句中错误的函数调用是 。 C
A) scanf ("%d,%lx,%le",&x,&y,&z); B) scanf ("%2d*%d%lf",&x,&y,&z);
C) scanf ("%x%*d%o",&x,&y); D) scanf ("%x%o%6.2f",&x,&y,&z);
43 与条件表灶册达式"(n)?(c++):(c--)"中的表达式(n)等价的表达式是__C__。
A) (n==0) B) (n==1) C) (n!=0) D) (n!=1)
44 已知int i=1,j=0;执行下面语句后j的值是__D__。
while(i)
switch(i)
{ case 1: i+=1;j++;break; 2 1
case 2: i+=2;j++;break; 4 2
case 3: i+=3;j++;break; 6 4
default: i--;j++;break; 3 3
}
A) 1 B) 2 C) 3 D) 死循环
45 求取满足式 12+22+32+ …… +n2 ≤1000的n,正确的语句是__C__。
A) for(i=1,s=0;(s=s+i*i)<=1000;n=i++) ;
B) for(i=1,s=0;(s=s+i*i)<=1000;n=++i) ;
C) for(i=1,s=0;(s=s+i*++i)<=1000;n=i) ;
D) for(i=1,s=0;(s=s+i*i++)<=1000;n=i) ;
这个应该是 (s =s+ ++i * 10 +2) 才行吧
Ⅶ 求汇编语言与程序设计高手来。我需要组一份汇编试题请高手给做下。谢谢。时间比较急。
1.设(DS)=2000H, (ES)=3000H, (SS)=4000H, (BX)=1000H, (BP)=1000H, (SI)=0001H, (DI)=0002H, (21000H)=1234H, (21002H)=5678H, (31000H)=9ABCH, (31002H)=0DEF0H, (41000H)=3456H, (41002H)=789AH, 计算下列各指令中源操作数的物理地址,并指出指令执行后AX寄存器的内容。
MOV AX, ES:[1000H] 物理地址 31000H (AX)=9ABCH
MOV AX, [BX] 物理地址 21000H (AX)=1234H
MOV AX,[BP+DI] 物理地址 21002H (AX)=5678H
MOV AX, [BX][SI] 物理地址 21001H (AX)=7812H
6.在下列程序段括号中,填入正确的答案。
DATA SEGMENT
BUF DB 12H,56H
DATA ENDS
7.指出下列指令错误原因,填入括号中。
A. MOV AX,BL ;源操作数与目标操作数则戚长度不同
B. MOV CS,AX ;CS寄存器不能作为目标操作数
C. DEC GAMA[BX] ;必须显示指明目标操作数的长度(使用BYTE PTR、WORD PTR等修饰符)
D. MOV ES,5600H ;以段寄存器作为MOV指令的目标操作数时,源操作数不能是立即数
E. SUB AX,DS ;段寄存器不可作为运算类指令的源操作数
8.下列语句在存贮器中分别为变量分配多少字节?请填入括号中。
VR1 DW ? ;2字节
VR2 DW 4 DUP(?),2;10字节
CONT EQU 10 ;此为伪指令,CONT只是作为汇编阶段中表示数值10的标号,不是变量,因此不实际分配内存
9.设BX=1200H,SI=0002H,DS=3000H,(31200H)=50H,(31201H)=02H,(31202H)=OF7H,(31203H)=90H请写出下列各条指令单独执行后,有关寄存器及存储单元的内容,若该指令影响标志位,则指出其值。
A. DEC BYTE PTR〔1200H〕 ; 问:(31200)=4FH, CF=原来CF的值(DEC指令不影响CF标志)
B. SAR BYTE PTR [SI+1200H],1 ; 问:(31202H)=FBH,ZF=0
C. MOV AX,WORD PTR〔BX+SI〕 ;问:AX=90F7H,SF=原来SF的值(MOV指令不影响标志位)
2.每组写一条程序指令,使: (6分历辩)
A. BX寄存器的低四位置1 OR BX,000FH 或者 OR BL,0FH
B. AX寄存器的低四位清0 AND AX,0FFF0H 或者 AND AL,0F0H
C. 用TEST指令测试DL寄存器孙烂陵的第3位和第6位是否同时为0。 TEST DL,01001000b(若结果ZF=0表示两者同时为0)
3.在某子程序的开始处要保护AX,BX,CX,DX四个寄存器信息,在子程序结束时要恢复这四个寄存器信息。例如: (4分)
;保护现场
PUSH AX
PUSH BX
PUSH CX
PUSH DX
;恢复现场
┇
┇
┇
试写出恢复现场时的指令序列。
POP DX
POP CX
POP BX
POP AX
1.对于下面的数据定义,各条MOV的指令单独执行后,有关寄存器的内容是什么?(5分)
FLDB DB ?
TAB1 DW 20 DUP(?)
TAB2 DB ‘ABCD’
(A) MOV AX,TYPE FLDB AX=1
(B) MOV AX,TYPE TAB1 AX=2
(C) MOV CX,LENGTH TAB1 CX=20
(D) MOV DX,SIZE TAB1 DX=40
(E) MOV CX,LENGTH TAB2 CX=1
下面程序段执行完后,AL的内容是什么? (5分)
MOV AL,10
ADD AL,AL
SHL AL,1
MOV BL,AL
SHL AL,1
ADD AL,BL
结果AL=0C0H
3试问下面的程序段完成的功能是什么? (5分)
SAL AX,1
RCL DX,1
5.已知程序段:
STRING DB ‘ABCDEFGHIJ’
┇
MOV AH,01 ;从键盘输入字符1~9
INT 21H
AND AL,0FH
DEC AL
XOR AH,AH
MOV BX,OFFSET STRING
ADD BX,AX
MOV DL,[BX]
MOV AH,02H ;显示输出
INT 21H
┇
试回答: (1)上述程序段的功能是什么?
(2)如从键盘输入字符‘4’,程序段有什么结果?(6分)
答:(1)上述程序段功能是从键盘输入一个字符,假定该字符是1-9,则输出STRING中这个数值所对应的字母(1对应A,2对应B……)
(2)输入4则输出D
Ⅷ 已知程序段: m=0 n=20 while m<=n: m=m+1 n=n-1 if m*n=100:break print(m) 运行后的结果是什么
10
把这个伪衫郑代码修改一兄塌埋下直接跑一遍就知道结果是什么了,不方便跑就羡蚂手算,m*n=100,m+n=20,m≤n,算一下所以等于10
Ⅸ 博途v15怎样查找已知I点所在的程序段
选中对应的变量,单击右键,可山岩以通过交姿猜叉引用或者交叉迹唯型引用信息来看,点击对应位置自动跳转。