Ⅰ 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點所在的程序段
選中對應的變數,單擊右鍵,可山岩以通過交姿猜叉引用或者交叉跡唯型引用信息來看,點擊對應位置自動跳轉。