当前位置:文档之家› 《汇编语言程序设计》习题答案(第二版 沈美明 温冬婵 清华大学出版社)

《汇编语言程序设计》习题答案(第二版 沈美明 温冬婵 清华大学出版社)

《汇编语言程序设计》习题答案(第二版 沈美明 温冬婵 清华大学出版社)
《汇编语言程序设计》习题答案(第二版 沈美明 温冬婵 清华大学出版社)

1

汇编语言程序设计(第二版)

第二章

1、答:直接由指令指定的I/O 端口数为256个。

2、答:

3、答:字节单元:(30022H )=AB H ,(30024H )=EF H

字单元:(30021H )=AB34H ,(30022H )=CDAB H 。

4、答:3017:000A 的存储单元的物理地址是3017AH ,

3015:002A 的存储单元的物理地址是3017AH ,

3010:007A 的存储单元的物理地址是3017AH 。

5、答:该程序的第一个字的物理地址是0AAA40H 。

6、答:条件标志OF 、SF 、ZF 、CF 的值依次分别为0、0、0、0。

7、答:(1)AX 、BX 、CX 、DX 、AH 、AL 、BH 、BL 、CH 、CL 、DH 、DL 、

SP 、BP 、DI 、SI (注意:学生尽量不要用SP 参与加减运算)

(2)CX

(3)DX 、AX 、AH 、AL

(4)CS 、DS 、ES 、SS

(5)FLAGS

(6)IP

(7)SS 、SP 、BP

8、答:可以用来指示存储器地址的寄存器有BX 、SP 、BP 、DI 、SI 、IP 、CS 、DS 、ES 、SS 。

9、答:唯一正确的是D 。

第三章

1。

.(1)立即寻址没有

(2)直接寻址7237H

(3)使用BX 的寄存器寻址没有

(4)使用BX 的间接寻址637DH

(5)使用BX 的寄存器相对寻址0D5F0H

(6)基址变址寻址8E18H

(7)相对基址变址004FH

22。根据下列要求,写出相应的汇编指令。

(1)ADD DX,BX

(2)ADD AL,[BX][SI]

(3)ADD [BX][0B2H],CX

(4)MOV AX,2A59H ADD [0524H],AX

(5)ADD AL ,0B5H

3。

(1)寄存器间接寻址

MOV BX,OFFSET [BLOCK][0AH]

MOV DX ,[BX]

(2)寄存器相对寻址

MOV SI,OAH

MOV DX,[BLOCK][SI]

(3)基址变址寻址

MOV BX ,BLOCK

MOV SI,OAH

MOV DX,[BX][SI]

4现有(DS )

=2000H,(BX)=0100H,(SI)=0002H,(20100)=12H,(20101)=34H,(20102)=56H,(20103)=78H,(21200)=2AH,(20201)=4CH,(21202)=B7H,(21203)=65H,试说明下列各条指令执行完后,AX 寄存器的内容。

(1)MOV AX,1200H 1200H

(2)MOV AX,BX 0100H

(3)MOV AX,[1200]4C2AH 注意,是字单元!!

(4)MOV AX,[BX]3412H 同上

(5)MOV 1100[BX]4C2AH

(6)MOV AX,[BX][SI]7856H

(7)MOV AX,1100[BX][SI]65B7H

5。

(1)7CD9H (2)1200H (3)6319H

6。MOV BX,2000H

LES DI ,[BX]

MOV AX,ES :DI

7。转向地址OBJ 的值分别为:(1)064DH (2)0691H (3)05E0H

注意有符号数的

符号位~~

8。(1)MOV AX,0ABH 立即数寻址无物理地址

(2)MOV AX,BX 寄存器寻址同上

(3)MOV AX,[100]直接寻址20100H

(4)MOV AX,VAL 直接寻址20050H

(5)MOV AX,[BX]寄存器间接寻址20100H

(6)MOV AX,ES :[BX]直接寻址21100H

(7)MOV AX,[BP]寄存器间接寻址20010H

3(8)MOV AX,[SI]同上200A0H

(9)MOV AX,[BX+10]寄存器相对寻址20110H

(10)MOV AX,VAL[BX]同上20150H

(11)MOV AX,[BX][SI]基址变址寻址201A0H

(12)MOV AX,VAL[BX][SI]相对基相变址寻址201F0H

9。的指令:MOV AX,[BX][0CH]

MOV ZREO ,AX

(2)的指令:MOV AX,ARRAY[BX]

MOV ZREO,AX

10。MOV AX,TABLE 是把符号地址TABLE 里的内容送到AX 里,指令执行完后,(AX)=1234H

LEA AX,TABLE 是把符号地址TABLE 的有效地址(这里是偏移量)送到指定寄存器AX 里,指令执行完后,(AX )=0032H

11。执行完指令后,(AX )=1E00H

12。LEA AX,CSTRING

MOV DL,AX

MOV DH,[AX+6]

13。这个,,图,很麻烦了,所以就不画了~~大家可以看一下课本上P51--P53,很清楚,看完了这道韪也会了~~~

14。LES BX,[2000]

MOV AX,ES:[BX]

注意:一开始我写的是:MOV AX,ES:[8000H],后来看到题目里要求写两条指令,所以

一条就不行了,就要画蛇添足~~~

15。运算结果:SF,ZF,CF,OF 各位的值(从左至右依次往下~)

(1)74D4H 0000

(2)A5C1H 1001

(3)4240H 0010

(4)0000H 0110

16。接上表~

(1)5D140000

(2)A8701001

(3)D8701000

(4)34E40010

17。

(1).MOV AX,Z ;把Z 送到AX SUB AX,X ;Z-X ADD AX,W ;W+(Z-X)

MOV Z,AX ;结果保存在Z 中

(2).MOV AX,R ;R 送到AX 中

ADD AX,9;R+9

MOV BX,X ;X 送到BX 中

ADD BX,6;X+6

ADD AX,BX ;(R+9)+(X+6),结果保存在AX 中

MOV BX,W ;W 送到BX 中

SUB BX,AX ;W-(R+9)-(X+6),连续减去两个数,相当于减去这两个数的和~~

4MOV Z,BX ;最终结果送到Z 中

(3)MOV AX ,W ;把W 送到AX IMUL X ;W*X 注意:低十六位保存在AX 里,高十六位保存在DX 里MOV BX ,Y ;把Y 送到BX 里ADD BX ,6;Y+6IDIV BX ;(W*X )/(Y+6)注意:商保存在AX 里,余数保存在DX 里MOV Z ,AX ;把商送到Z 中,MOV R ,DX ;把余数送到R 中(4)MOV AX,W ;把W 送到AX 中SUB AX,X ;W-X CWD ;把AX 中的十六位带符号数扩展成为32位,低十六位保存在AX 中,高十六位保;在DX 中

MOV BX,5;把5送到BX 中IDIV BX ;(W-X )/5被除数为32位,除数为16位商为16位IMUL Y ;上一步结果再乖以Y ,积为32位MOV BX,2;把2送到BX 中IMUL BX ;上一步乘法所得的积再乘以2,各为64位MOV Z,EAX ;把结果中低32位放入Z 双字单元中MOV [Z+4],EDX ;把结果中高32位放入Z+4双字单元中18。指令本条指令执行完后AX 的内容执行完后CF,SF,ZF 的值MOV AX,1234H 1234H 000MOV CL,41234H 000ROL AX,CL 2341H 100DEC AX 2340H 100MOV CX,42340H 100MUL CX 8918H 000INT 20H

程序结束后,(AX )=8918H (DX)=0000H

19。指令执行完后AX 的内容执行完后CF ,SF,ZF 和OF 的值

MOV AX,000010

DEC AX FFFFH 0100

ADD AX,7FFFH 7FFEH 0000

ADD AX,28000H 0101

NOT AX 7FFFH 0101

SUB AX,0FFFFH 8000H 1101

ADD AX,8000H 0000H 1011

SUB AX,1FFFFH 1101

AND AX,58D1H 58D1H 0000

SAL AX,1B1A2H 0101

SAR AX,1D8D1H 0100

NEG AX 272FH 1000

ROR AX,19397H 1001

20。(1)MOV AX ,DATAX

ADD DATAY ,AX

(2)MOV AX ,DATAX

ADD DATAY ,AX

MOV AX ,[DATAX+2]

ADD [DATAY+2],AX

5(3)本组指令的作用是:BX <------[DATAX]+[DATAY]+[1](CF 的值)带进位加法~

(4)MOV AX ,DATAX

MUL DATAY ;结果的高十六位保存在DX 里,低十六位保存在AX 里

(5)MOV AX ,DATAX

MOV DX ,[DATAX+2]

MUL DWORD DATAY ;结果的高三十二位保存在EDX 里,低三十二位保存在EAX 里

;这里所用的DWORD 为一属性操作符,在第四章会学到~~

(6)MOV AX ,DATAX

DIV 17H ;结果商保存在AL 中,余数在AH 中

(7)MOV AX ,DATAX

CDW

DIV DATAY

21。NEG DX

NEG AX

SBB DX ,0

22。MOV AX ,A ;把双字长数的低字放到AX 中

MOV DX ,[A+2];把双字长数的高字放到DX 中

TEST DX ,8000H ;测试双字长数的符号

JZ RIGHT ;如果是非负数,则直接保存

NEG DX ;如果是负数,则求补

NEG AX

SBB DX ,0

RIGHT :MOV B ,AX

MOV [B+2],DX

23。每条指令单独执行完后的结果依次为:

(1)9AH (2)61H (3)0FBH (4)1CH (5)0(6)0E3H

24。执行指令序列后,BX 的内容为:0DAH

25。

(1)把53D 乘以2的程序:

MOV AX ,35H ;53D=35H

SHL AX ,1

(2)把53除以2的程序:

MOV AX ,35H

SHR AX ,1

其他的同理~~

26。这段程序完成的功能是:把DX :AX 中的双字数据左移4位(相当于乘以16D )

27。各条指令单独执行后,DX 的值依次为:

(1)5CH (2)17H (3)05C8H (4)72H (5)2017H (6)0CDH (7)0172H (

8)05CCH

(9)0DCH

28。该程序段执行完后,BX 寄存器的内容是:C02DH

29。(1)从左到右把CONMAE 中的字符串伟送到PRLINE 的程序实现:

LEA SI ,CONAME ;把CONAME 中第一个字节的偏移地址送到SI 中

6

LEA DI ,PRLINE ;把PRLINE 中第一个字节的偏移地址送到DI 中

MOV CX ,20;把重复次数放到CX 里

CLD ;让SI DI 从低地址指向高地址(即从左到右传送)

REP MOVSB ;传送

(2)从右到左把CONMAE 中的字符串传送到PRLINE 中的程序实现:

LEA SI ,CONAME

LEA DI ,PRLINE

MOV CX ,20

STD ;和上面唯一不同的就是这次是从右到左,所以要从高地址批向低地址

REP MOVSB

(3)把CONAME 中的第三和第四个字节装入AX 的程序实现:

LEA SI ,[CONAME+3]

LODSW

(4)把AX 寄存器的内容存入从PRLINE+5开始的字节中的程序实现:

LEA DI ,[PRLINE+5]

STOSW

(5)检查CONAME 字符串中有无空格字符,如有把它伟送给BH 寄存器的程序实现:LEA DI ,CONAME ;把CONAME 中第一个字符偏移地址放入DI 中MOV CX ,20;把重复次数放到CX 中

MOV AL ,20H ;把空格符的ASCII 值放入AL 中

CLD ;从低到高

REPNE SCASB ;比较

MOV BH ,[DI-1]R ;把检查到的空格符送到BH 中

30。

MOV CX ,12H ;把重复次数放到CX 中。这里用十六进制表示

MOV SI ,0;初始化SI

MOV AX ,26H ;把&字符的ASCII 值放入AX

CHECK :CMP AX ,STRING[SI];依次查找

INC SI

LOOPNE CHECK ;找到了就退出

MOV AX ,20H ;把空格符的ASCII 值勤放入AX 中

MOV STRING[SI-1],AX ;用空格符代替&

31。(1)用空格符清除PRINT_LINE 域的程序实现:

MOV AL ,20H

LEA DI ,PRINT_LINE

MOV CX ,132

CLD

REP STOSB

(2)在STUDENT_ADDR 中查找第一个’_‘的程序实现:

MOV AX ,2DH ;把“—”的ASCII 值放入AX

MOV SI ,0;初始化SI

MOV CX ,9;把重复次数放入CX 中

;依次检查STUDENT-ADDR 中的字符是否为"_",找到第一个停下来

7CHECK :CMP AX ,STUDENT_ADDR[SI];

INC SI

LOOPNZ CHECK

(3)在STUDENT_ADDR 中查找最后一个”_“的程序实现:

;和第二题不同的就是这次是从右到左查询,所以SI 的初始化为9

MOV AX ,2DH

MOV SI ,9

MOV CX ,9

CHECK :CMP AX ,STUDENT_ADDR[SI]

DEC SI

LOOPNZ CHECK

(4)程序实现:

MOV AL ,2OH ;把空格符的ASCII 值放入AL 中

LEA DI ,STUDENT_NAME ;把STUDENT_NAME 中第一个字符偏移地址放到DI 中

MOV CX,30;把重复次数放到CX 中

CLD ;让DI 从低位移到高位

REPZ SCASB ;如果有不是空格符的,就退出

JZ STORE ;如果全是空格符,就转到STORE 中

;用*代替空格

STORE :MOV AL 2AH

MOV CX ,30

STD ;注意,这里是把前面从低到高移动的DI 再从高到低移上去~~

REP STOSB

(5)程序实现:

;把STUDENT_NAME 移到PRINT_LINE 的前30个字节中

LEA SI ,STUDENT_NAME

LEA DI ,PRINT_LINE

MOV CX ,30

CLD

REP MOVSB

;把STUDENT_ADDR 移到PRINT_LINE 的后9个字节中

LEA SI ,[STUDENT_ADDR+9]

LEA DI ,[PRINT_LINE+132]

MOV CX,9

STD

REP MOVSB

32。程序实现:

。。。

LEA SI ,OLDS

LEA DI ,NEWS

MOV CX ,5

REPZ CMPSB

JNZ NEW_LESS

8。。。

33。

(1)CMP DX ,CX

JA EXCEED

(2)CMP BX ,AX

JG EXCEED

(3)CMP CX ,0

JZ ZERO

(4)CMP BX ,AX

JO OVERFLOW

(5)CMP BX ,AX

JLE EQ_SMA

(6)CMP DX ,CX

JBE EQ_CX

34。(1)跳转到:L1

(2)跳转到L1

(3)跳转到L2

(4)跳转到L5

(5)跳转到L5

35。

(1)可以引起转移到L1的指令有:NB ,BE ,NL ,LE

(2)可以引起转移到L1的指令有:同上

(3)可以引起转移到L1的指令有:B ,BE ,L ,LE

(4)可以引起转移到L1的指令有:NB ,NBE ,NL ,NLE

(5)可以引起转移到L1的指令有:同上

(6)可以引起转移到L1的指令有:同(3)

(7)可以引起转移到L1的指令有:同上

36。

37。程序流程图就不画了,呵呵,程序如下~~

MOV AL ,STAUS[SI];把要测试的字节放到AL 中

AND AL ,2AH ;把第一,三,五位为一其他位为0的数--2AH ,与这个字节比较,结果

;放到AL 中

JZ ROUTINE_4;如果结果为0,则三位都为0

XOR AL,2AH ;前面相与的结果再与2AH 异或

JZ ROUTINE_1;如果结果为0,则三位都为1

BSF BL,AL ;

BSR BL ,AL

CMP BL,CL

;如果向前和向后测试后,第一个1的位置相同,说明只有一个1,则异或运算前有AL 中有两个1

JE ROUTINE_2

ROUTINE_1

注:本题还有其他解法,请大家自己试试~~

9

38。(1)当括号内是:LOOP 时,循环四次,程序结束后

(AX )=05(BX )=16(CX )=0(DX )=0

(2)当括号内是:LOOPE 时,不循环,程序结束后

(AX )=02(BX )=04(CX )=03(DX )=02

(3)当括号内是:LOOPNE 时:循环三次,程序结束后

(AX )=04(BX )=11(CX )=01(DX )=0

IBM-PC 汇编语言程序设计(第二版)课后习题答案(清华大学出版社)(沈美明,温冬蝉著)第三章答案39--52

39。图,就不画了,呵呵~~自己看一下课本,P101~~

40.。(1)00003100H (2)5100H (3)7100H

41。(1)目的地址:2004H 内容依次为:56H F4H 23H 98H

(2)目的地址:384CH 内容依次为:91H 34H F2H 01H

(3)目的地址:寄存器,无物理地址~内容依次为:92H 6DH

A2H 4CH 42。(1)PUSH AX

(SP)<------(SP)-2(SP+1)<-----(AH)(SP)<------(AL)

(2)POP ESI (ESI)<-------((ESP)+3,(ESP)+2,(ESP)+1,(ESP))

(ESP)<-------(ESP)+4(3)PUSH [BX]

(SP)<------(SP)-2(SP+1)<-----([BX+1])(SP)<------([BX])

(4)PUSHAD

(ESP)<-------(EAX)(ESP-4)<-------(ECX)(ESP-8)<-------(EDX)(ESP-12)<-------(EBX)(ESP-16)<-------(ESP);这里指的是指令执行前的ESP

(ESP-20)<-------(EBP)(ESP-24)<-------(ESI)(ESP-28)<-------(EDI)(ESP)<-------(ESP)-32

(5)POP DS

(DS)<------((SP)+1,(SP))(SP)<------(SP)+2(6)PUSH 4

(SP)<-------(SP)-2(SP+1)<-----0

(SP )<------4

43。(1)2CE FF93H (2)24B 76A0H

(3)9090804H (4)6F 13ADH

44。(1)0FFFF FFFCH (2)0FFFF FFF8H

(3)00000007H (4)00000099H

45。(EAX )=0(EBX )=25d 46。(AX )=3d (DX )=7d 47。ADD ECX ,EDX ADD ECX ,ESI

MOV EDI ,ECX

48。IMUL BX ,DX ,100H 执行的操作是:

(BX )<-------(DX)*100H

49。程序实现:

10MOV AL ,BL

CBW

IDIV CL

IMUL 2

MOV DX ,AX

50。

JMP DI 是直接跳转,执行的操作是:(IP )<-----(IP)+(DI)

JMP [DI]是间接跳转,执行的操作是:(IP )<----(IP)+([DI])跳转到DI 中所指向的内存单元中的指令地址~

51。假设数组名为NUMBERS ,程序如下~

MOV BX ,0;后面用到~

MOV CX ,100H ;把循环次数放入CX

MOV AL ,42H

MOV SI ,0;初始化SI

;CHECK 用来实现查找功能~

CHECK :CMP AL ,NUMBERS[SI]

INC SI

JB STORE1;大于42H 的数的个数存入UP

JA STORE2;小于42H 的的数的个数存入DOWN 中~

LOOP CHECK ;相等继续循环~

STORE1INC BL ;找到一个大于42的数,BL 值增加1~

MOV UP ,BL

LOOP CHECK

STORE2INC BH

MOV DOWN ,BH

LOOP CHECK

52。图,也不用画了~~呵呵~好了,本章结束

第四章

1。指令下列指令的错误

(1)MOV AH ,BX 源操作数与目的操作数长度不相同~

(2)MOV [BX],[SI]这是两个内存单元在传递数据,而这在汇编语言中是不允许的~~~

(3)MOV AX ,[SI][DI]不能用两个变址连用,其中一个应为基址~

(4)MOV MYDAT[BX][SI],ES :AX 同(2)

(5)MOV BYTE PTR[BX],1000必须有一个为寄存器

(6)MOV BX ,OFFSET MYDAT[SI]OFFSET 不能与复杂操作数相连~

(7)MOV CS ,AX 不能对CS 赋值~

(8)MOV ECX ,AX 操作数类型不同~

2。(1)合法(2)非法(3)非法(4)非法

3。(1)非法,操作数类型不同

(2)合法

(3)非法,不允许两个内存单元直接传递数据,你把人家CPU 放哪了?~~~呵~

(4)合法~

(5)合法~

11

(7)非法~,必须有一个寄存器~~把CPU 放哪了?~~

(8)非法,两个内存单元地址相加没有意义~

(9)合法

(10)非法,同(3)

4。(1)两内存单元传递数据

(2)操作数类型不同

(3)跳转指令只能跳转到符号地址

(4)转移指令后不能为变量,只能为标号

(5)格式不对,应为NEAR PTR 。。。

5。图,就不画了~~

6。(1)DW 5150H

(2)MOV AX ,5150H

MOV ADDRESS ,AX

等,写出几个就可以~~

7。DATASG SEGMENT FLD1B DB 'personal

computer'

FLD2B DB 10DUP (32)FLD3B DB 20H

FLD4B DB 01011001B

FLD5B DB '32654'FLD6B DB 10DUP (0)FLD7B DB 'PART1',DUP 20(?),'PART2',DUP 50(?),'PART3',DUP 14(?)

FLD1W DW 0FFF0H

FLD2W DW 01011001B

FLD3W DW FLD7B FLD4W DW 5,6,7,8,9FLD5W DW 5DUP (0)FLD6W DW (FLD6W-FLD1W )-(FLD7B-FLD1B )

8。PLENTH 的值为22,GE 表示该数据段的长度~

9。L 的值为7

10。(1)MOV AX ,OFFSET LNAME

(2)MOV SI ,WORD PTR CODE_LIST

(3)CODE_LENGHT EQU $-CODE_LIST

11。代码如下:

DATA_SEG SEGMENT

DB 5DATA_LIST DW 0FFFFH,0,2,5,4,5DUP (?)

DATA_SEG ENDS

CODE_SEG SEGMENT

ASSUME CS:CODE_SEG,DS:DATA_SEG

MOV AX,5MOV MAX,AX

MOV AX,0FFFFH

MOV MIN,AX

CODE_SEG ENDS

12。(1)10025(2)19

(3)2548

(4)3

12(6)0FFFFH

(7)1

(8)3

13。分别汇编成为:

MOV AX ,0AH

MOV BL ,0AH

MOV CL ,1

14。(1)(AX )=1(2)(AX )=2(3)(CX )=14H (4)(DX )=32H (5)(CX )=1]

15。(1)操作符错误改为:DATA_SEG SEGMENT

(2)缺少段名在前面加个段名

(3)引用应该从;开始把那个“/”改成“;”

(4)结构混乱改为:

MAIN_PROC PROC FAR

。。。。

MAIN_PROC ENDP

END

16。程序框架如下:

DATA_SEG SEGMENT ;定义数据段

ORG 0E000H ;让下一字节地址为0E000H

FIRST_TYPE EQU THIS WORD ;建立一个与下一存储单元有相同段地址和偏移地址的操作数DATA_GROUP DB 100DUP(?);给DATA_GROUP 分配100个字节的空间DATA_SEG ENDS ;数据段结束

STACK_SEG SEGMENT ;定义堆栈段

ALIGN 16;让下一字节从小段首地址开始

STACK DB 100DUP (?);为堆栈分配空间

STACK_SEG ENDS ;

CODE_SEG SEGMENT

ASSUME CS:CODE_SEG ,DS:DATA_SEG ,SS:STACK_SEG

ORG 1000H ;让下条指令的第一个字节从1000H 开始START :MOV AX,DATA_SEG

MOV DS,AX

MOV AX,STACK_SEG

MOV SS,AX

.......

CODE_SEG ENDS

END START ;结束~

17。程序如下:

D_SEG SEGMENT ;数据段定义

AUGEND DD 99251

D_SEG ENDS

E_SEG SEGMENT ;附加段定义

ADDEND DD -15926

13

E_SEG ENDS

C_SEG SEGMENT ;代码段定义

ASSUME CS:C_SEG ,DS:D_SEG,ES:E_SEG

START:MOV AX,D_SEG

MOV DS,AX

MOV AX,E_SEG

MOV ES,AX

MOV EAX,DS:AUGEND

ADD EAX,ES:ADDEND

MOV DS:SUM,EAX

C_SEG ENDS

END START ;结束

18。

19。需要加上PTR 伪操作的有:(2)(3)(4)

第五章

5.1试编写一个汇编语言程序,要求对键盘输入的小写字母用大写字母显示出来

.model small

.stack 100H

.code

main proc far

Start:

push dx

mov ax,0

push ax

mov ah,01H

int 21H

cmp al,61H

jl lop1

cmp al,7BH

jge lop1

sub al,20H

mov dl,al

lop1:mov ah,2

int 21H

ret

End start

14

5.2编写一个程序,从键盘接受一个小写字母,然后找出它的前导字符和后续字符,再按顺序显示这三个字符.

.model small

.386

.code

MAIN PROC FAR

start:

push ds

sub ax,ax

push ax

input:

mov ah,7H

int 21H

cmpe:

cmp al,20H

JE exit

cmp al,61H

JL input

cmp al,7AH

JG input

print:

sub al,01H

mov dl,al

mov ah,02H

int 21H

add al,01H

mov dl,al

mov ah,02H

int 21H

add al,01H

mov dl,al

mov ah,02H

int 21H

;输出换行回车

mov dl,0AH

mov ah,02H

int 21H

15

jmp input

exit :

ret

MAIN ENDP

END start

5.3将AX 寄存器中的16位数分成4组,每组4位,然后把这四组数分别放在AL 、BL 、CL 、DL 中。

.model small

.data

x DB 4dup(?)

.stack 100H

.code

MAIN PROC FAR

start:

push ds

and ax,00H

push ax

mov ax,1234H

mov cx,04H

mov si,00H

lop:

push cx

mov cl,04H

rol ax,cl

push ax

and al,0FH

mov BYTE PTR x[si],al

pop ax

pop cx

add si,2

Loop lop

mov al,[X]

mov bl,[X+2]

mov cl,[X+4]

mov dl,[X+6]

print:

mov ah,02H

int 21H

mov dl,al

mov ah,02H

int 21H

16mov dl,bl

mov ah,02H

int 21H

mov dl,cl

mov ah,02H

int 21H

exit:

ret

MAIN ENDP

END start

5.4编写一个程序,要求比较两个字符串STRING1和STRING2所含字符是否相同,若相同则显示"MATCH",若不同在显示:"NO MATCH"。

.model small

.data

STRING1DB 'I must study hard'

STRING2DB 'I must study hard'

X DB 'MATCH .$'

Y DB 'NO MATCH.$'

.stack 100H

.code

main proc far

Start:

push dx

mov ax,0

push ax

mov ax,@data

mov ds,ax

mov es,ax

lea si,STRING1

lea di,STRING2

cld

mov cx,(string2-string1)/type STRING2

ret

End start

5.5编写一个程序,要求能从键盘接收一个个位数N ,然后响铃N 次,(响铃的ASCII 为07)。这题比较有意思,呵呵。

model small

.code

main proc far

start:

17push ds

sub ax,ax

push ax

input:

mov ah,01H

int 21H

cmp al,20H

je exit

cmp al,30H

jle input

cmp al,3AH

jge input

sub al,30H

mov cx,ax

and cx,0FFH

lop:

mov dl,07H

mov ah,2H

int 21H

loop lop

jmp input

exit :

ret

main endp

end start

5.6编写程序,将一个包含有20个数据的数组M 分成两个数组:正数数组和负数数组N ,并分别把这两个数组中的数据个数显示出来。

.model small

.386

.data

M DB 1,2,3,4,5,6,7,8,9,10,-1,-2,-3,-4,-5,-6,-7,-8,-9,-10

P DB 20dup(?)

N DB 20dup(?)

.code

MAIN PROC FAR

start:

PUSH ds

AND ax,0

PUSH ax

MOV ax,@data

mov ds,ax

MOV bx,0

MOV si,0

18

MOV cx,20D

cmpe :

CMP M[bx],0

JL ifLow

hight :

MOV al,byte ptr M[bx]

MOV byte ptr P[si],al

inc si

JMP commonContrl

ifLow :

MOV al,byte ptr M[bx]

MOV byte ptr N[di],al

INC di

commonContrl:

INC bx

loop cmpe

mov ax,si

call showNumber

call printCR

mov ax,di

call showNumber

exit:ret

MAIN ENDP

;;;;;;;;;;;;;;;;;注意,ShowNumber 这个子过程有问题,请自行修改;;;;;;;;;;;;;;;;

showNumber PROC NEAR

covernum:

DAA

MOV dx,ax

MOV cl,2H

show:

ROL dl,4H

push dx

AND dl,0fH

ADD dl,30H

MOV ah,02H

int 21H

pop dx

loop show

ret

showNumber ENDP

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

printCR PROC NEAR

19mov ah,02H

int 21H

mov dl,0dH

mov ah,02H

int 21H

ret

printCR ENDP

end start

5.7编制一个汇编语言程序,求出首地址为DATA 的100D 字数组中的最小偶数,并把它放在AX 中。

此题根据题意要求应该使用完整汇编格式,因为精简格式也使用DATA....

dataare segment

DATA DW 3322H,4555H,200H,3544H,1245H

num DB ($-DATA)/2

dataare ends

code segment

assume cs:code,ds:dataare

MAIN PROC FAR

start:

push ds

mov ax,0H

push ax

mov ax,dataare

mov ds,ax

mov dx,0H ;偶数数量计数

mov cx,Word ptr [num]

mov si,0H

isO:

mov bx,WORD PTR DATA[si]

shr bx,1H

jnc addDX

jmp commonControl

addDX:

ADD dx,1H

cmp dx,1H

je firstAXValue

compare:

mov bx,WORD PTR DATA[si]

cmp bx,ax

jge commonControl

mov ax,bx

commonControl:

20loop isO

jmp exit

firstAXvalue:

mov ax,WORD PTR DATA[si]

jmp compare

exit:

ret

MAIN ENDP

code ends

END start

5.8没有做。。

5.9编写一个汇编语言程序,要求从键盘上接收一个思维的十六位进制数,并在终端上显示与它等值的二进制数。

.model small

.386

.code

main proc far

start:

push ds

mov ax,0

push ax

mov ax,0

mov cx,4

mov dx,0

input:

mov ah,1H

int 21H

cmp al,30H

jl input

cmp al,39H

jle s

cmp al,61H

jl input

cmp al,66H

jg input

sub al,27H

s:

sub al,30H

add dl,al

cmp cx,1H

je f

rol dx,4

停车场管理系统—C语言课程设计.doc

停车场管理系统 1题目要求 设有一个可以停放n 辆汽车的狭长停车场,它只有一个大门可以供车辆进出。车辆按到达停车场时间的早晚依次从停车场最里面向大门口处停放(最先到达的第一辆车放在停车场的最里面)。如果停车场已放满n 辆车,则后来的车辆只能在停车场大门外的便道上等待,一旦停车场内有车开走,则排在便道上的第一辆车就进入停车站。停车站内如有某辆车要开走,在它之后进入停车场的车都必须先退出停车站为它让路,待其开出停车场后,这些车辆再依原来的次序进场。每辆车在离开停车场时,都应根据它在停车场内停留的时间长短交费。如果停留在便道上的车未进停车场就要离去,允许其离去,不收停车费,并且仍然保持在便道上等待的车辆的次序。编制一程序模拟该停车场的管理。 【基本要求】要求程序输出每辆车到达后的停车位置(停车场或便道上),以及某辆车离开停车场是的停车时间及它应该交的费用。 2需求分析 根据题目要求,因为停车场是一个单条的序列,可以用结构体实现;在程序中,需要知道每辆来车的具体停放位置,应提供提示、查找、标记工作。车辆离开要计时计费。另外,每天开始时,停车场要初始化。 3总体设计 这个系统可以分为:初始化、有车进入、有车离开、退出四个模块。 4详细设计 main()函数体内包含了界面选则部分menu(),并单独 抽出来作为一个独立函数,目的在于系统执行每部分 模块后能够方便返回到系统界面。即main()函数写为 如下: void main()/*主函数*/ { menu();/*菜单函数*/ } 菜单函数: void menu() { int n,w; do { puts("\t\t**************MENU**************\n\n"); puts("\t\t\t 1.初始化"); puts("\t\t\t 2.有车进入"); puts("\t\t\t 3.有车离开"); puts("\t\t\t 4.退出"); puts("\n\n\t\t*********************************\n"); printf("Please choice your number(1-4): [ ]\b\b"); scanf("%d",&n); if(n<1||n>4) /*对选择的数字作判断*/ { w=1; getchar(); } else w=0; }while(w==1); switch(n) { case 1:chushi();break; /*初始化函数*/ case 2:jinru();break; /*车辆进入函数*/

新编基础物理学第二版第二章习题解答

9习题二 2-1.两质量分别为m和M (M m)的物体并排放在光滑的水平桌面上,现有一水平力F作用在物体m上,使两物体一起向右运动,如题图2-1所示,求两物体间的相互作用力。若水平力F作用在M上, 使两物体一起向左运动,则两物体间相互作用力的大小是否发生变化? 解:以m、M整体为研究对象, F 以m为研究对象,如解图2-1 有 (m M )a…①(a),有 F Mm ma…② 由①、②两式,得相互作用力大小 l MF F Mm . “ m M 若F作用在M上,以m为研究对象,如题图2-1 (b)有 F Mm ma 由①、③两式,得相互作用力大小解图2-1 F Mm 讦发生变化。 m M 2-2.在一条跨过轻滑轮的细绳的两端各系一物体,两物体的质量分别为 M2,在M2上再放一质量为m的小物体,如题图2-2所示,若M1=M2= 4m,求m和M2之间的相互作用 力,若M1=5m, M2=3m,则m与M2之间的作用力是否发生变化? M1和 解:受力图如解图2-2,分别以M1、M2和m为研究对象,有题图2-2 又T1T2,则当M1 当M1 T1 M1g M1a (M2 m)g T2 (M 2 m)a mg F M 2m ma C O F M 2m 2M 〔mg m M1 M2 M 2 4m 时 解图2-2 F M2m8mg 5m, M 2 3m 时 F M 2m10mg 9 发生变化。 题图2-1

2-3?质量为M的气球以加速度v匀加速上升,突然一只质量为m的小鸟飞到气球上,并停留在气球上。若气球仍能向上加速,求气球的加速度减少了多少? r 解:设f为空气对气球的浮力,取向上为正。 分别由解图2-3(a)、(b)可得 f M g Ma mag a a a1 m M 2-4.如题图2-4所示,人的质量为60kg,底板的质量为在底板上静 止不动,则必须以多大的力拉住绳子? 解:设底板和人的质量分别为M , m,以向上为正方向, (a)、(b)所示,分别以底板、人为研究对象,则有 T| T2 F Mg 0 T3 F ' mg 0 F为人对底板的压力, F '为底板对人的弹力。有 F F 又因为 f (M m) g (M m)a1 由此解得 a i Ma mg m M ?0 (a) ⑹ 解图2-3 则 T 2 T 3 也严 245N 40 kg。人若想站 受力图如解图2-4 解图2-12

清华大学出版社图书出版流程

清华大学出版社图书出版流程 1.图书列选。 作者填写选题申请表,组稿编辑上报选题,经审批通过后,选题即列选。 2.签订出版合同。 组稿编辑将出版合同发给作者,作者填写后发回组稿编辑,在社内审批。 3.作者提交书稿样章。 作者在交稿前向出版社编辑提交一部分已经完成的书稿。样章提交给组稿编辑或由组稿编辑指定的文稿编辑。编辑就书稿的体例和内容提出修改建议。 4.作者交稿(完整的定稿)。 作者将书稿的完整定稿提交给组稿编辑,由组稿编辑直接进行编辑加工或将书稿交给指定的文稿编辑进行编辑加工。 编辑收到书稿后,对于不符合质量要求的书稿,会退还给作者进行修改和调整。 5.书稿编辑加工。 编辑将加工中发现的书稿中待处理的疑问进行汇总整理,并提交给作者,由作者解疑。 6.复审、终审。 编辑根据作者的解疑将加工环节的疑问全部进行处理后,将书稿先后提交复审和终审。复审和终审所提出的疑问由编辑负责与作者进行沟通解决。 7.发稿付排。 编辑根据作者的解疑将复审和终审环节的疑问全部进行处理后,进行发稿登记,将书稿交付排版厂进行书稿电子版的修改和排版。 8.校对。 书稿经修改和排版后,打印一校样,交付校对室完成三次校对。 校对环节中会专门打印一份供作者通读的校样,称为“清样”或“作者样”,由编辑寄给作者。作者在约定时间内(一般为10天左右)将通读完毕的清样寄回编辑处。 清样通常为一校样或二校样。书稿较易修改的,一般会在出一校样的同时出清样;修改难度较大的书稿,会在出二校样时出清样。 在校对环节中如果发现书稿中仍有疑问处,由编辑与作者进行具体沟通。 9.付印。 三校完成后,书稿即出胶片交付印刷厂进行印制。

停车场管理系统 c语言

2015-2016学年第二学期《高级语言程序设计》 课程设计报告 题目:停车场管理系统 专业:计算机科学与技术 班级:15级计科<1>班 姓名:胡玉玉 指导教师:陈广宏 成绩: 计算机学院 2016 年 4月 25 日

目录 1. 设计内容及要求 (1) 1.1 课程设计内容 (1) 1.2 课程设计的要求 (2) 2概要设计 (3) 2.1 设计思路 (3) 2.2 程序基本框架结构图 (4) 3设计过程或程序代码 (5) 3.1 主要程序代码及解释 (5) 4设计结果与分析 (13) 4.1 程序运行结果截图与分析 (13) 5参考文献 (16)

1.设计内容及要求 1.1 课程设计内容 ①通过本次课程设计,强化上级动手能力,在理论和实践的基础 上巩固《C语言程序设计》课程的学习内容。掌握软件设计的基本方法。 ②熟悉C语言的基本内容从而掌握C语言的基本知识以及了解C 语言的基本编写及运行。 ③了解程序的分模块编写并对程序的每个模块进行详细的设计并 且能理解一般C语言编写的程序。 ④掌握书写程序设计说明文档的能力。 ⑤熟悉C程序设计的开发环境及C程序的调试过程 1.2 课程设计的要求 ①分析课程设计题目的要求。 ②写出详细设计说明。 ③编写程序代码,调试程序使其能正确运行。 ④设计完成的软件要便于操作和使用。 ⑤设计完成后提交课程设计报告。

2.概要设计 2.1设计思路 停车场是一个可停放n辆汽车的狭长通道,并只有一个大门可供汽车进出,汽车在停车场内按车辆到达的先后顺序,依次由北向南排列(大门在最南端,最先到达的第一辆车停放在车场的最北端),如车长内已停满n辆汽车,则后来的汽车只能在门外的便道上等候,一旦有车开走,则排在便道上的第一辆车即可开入;当停车场内某辆车要离开时,在它后进入的车辆必须先退出车场为它让路,待该辆车开出大门外,其它车辆再按原次序进入车场,每辆停放在车场的车在它离开停车场时必须按它停留的时间长短交纳费用,以栈模拟停车场,以队列模拟车场外的便道,按照从终端读入的输入数据序列进行模拟管理.每一组输入数据包括三个数据项:汽车”到达” 或”离去”信息,汽车牌照号码以及到达或离去的时刻(到达或离去的时刻也可用计算机控制).对每一组输入数据进行操作后的输入信息为:如是车辆到达,则输入汽车在停车场。 2.2程序基本框架结构图

梁小民《西方经济学-第二版》第二章课后习题答案知识分享

第二章供求、供给、价格 1、为什么欲望不同于需求? 答:欲望是一种缺乏的感受和需要满足的愿望,其基本特点是无限性,即人的欲望永远没有完全得到满足的时候。 需求是指消费者(家庭)在某一特定时期内,在每一价格水平时愿意而且能够购买的某种商品量。需求是购买欲望和购买能力的统一,缺少任何一个条件都不能成为需求。 欲望是永无止境的,没有限制条件,而需求受到购买欲望和购买能力的制约,二者缺一不可,所以欲望不同于需求。 1、有些企业在广告宣传中声称自己的产品是为“工薪阶级服务的”。从经济学角度看,这种说法对不对?为什么? 答:从经济学角度看,这种说法是不对的。 企业宣传自己的产品是为工薪阶层服务,主要是指在价格上给予工薪阶层方便,通过降低价格,提供经济实惠又保质的产品,吸引消费者,让消费者有经济能力来购买产品。 需求是购买欲望和购买能力的的统一,二者缺一不可。产品为工薪阶层服务,旨在强调消费者的购买能力,却忽略了其购买欲望。所以,从经济学角度看,这种说法是不正确的。 2、出租车行业越发达,服务越好,价格越低,买汽车的人越少,为什么? 答:替代品是指可以互相替代来满足同一种欲望的商品。出租车和汽车,皆可为人们提供出行便利服务,它们之间可以相互替代,是

替代关系。 对于有替代关系的商品,当一种商品价格下降时,人们对其需求增加,导致另一种商品需求下降。当出租车行业发达,价格低廉,服务良好时,人们会增加对出租车的消费需求,从而减少对汽车的购买需求。 4、旅游业的发展可以带动旅馆、餐饮、交通、娱乐等行业的发展,为什么? 答:互补品是指共同满足一种欲望的两种商品,他们是相互补充的,旅游业与旅馆、餐饮、交通、娱乐等行业就是一种互补关系。两种互补品价格与需求呈反向变动,当旅游业发展,价格降低,消费者而对其互补的旅馆、餐饮、交通、娱乐等的需求就增加,从而带动其发展。 5、我国加入世贸组织对汽车市场的需求有什么影响?为什么? 答:总体上来说会扩大对汽车市场的需求。首先,我国加入世贸组织后,经济发展,人民收入增加,消费者对汽车有了一定的购买力,其次,加入世贸组织使得汽车价格下架昂,对汽车的购买需求增多。再次,加入世贸组织使得发达国家的消费方式影响发展中国家,购买汽车会成为人们的偏好与心理欲望。最后,加入世贸组织,消费者对自己未来的收入与商品价格走势有所预期,这种预期也影响了购车的意愿和需求。综上,我国加入世贸组织会扩大汽车市场的需求。

大全课后题答案清华大学出版社沈美明版

第一章. +习题 1.1用降幂法和除法将下列十进制数转换为二进制数和十六进制数: (1) 369 (2) 10000 (3) 4095 (4) 32767 答:(1) 369=1 0111 0001B=171H (2) 10000=10 0111 0001 0000B=2710H (3) 4095=1111 1111 1111B=FFFH (4) 32767=111 1111 1111 1111B=7FFFH 1.2将下列二进制数转换为十六进制数和十进制数: (1) 10 1101 (2) 1000 0000 (3) 1111 1111 1111 1111 (4) 1111 1111 答:(1) 10 1101B=2DH=45 (2) 1000 0000B=80H=128 (3) 1111 1111 1111 1111B=FFFFH=65535 (4) 1111 1111B=FFH=255 1.3将下列十六进制数转换为二进制数和十进制数: (1) FA (2) 5B (3) FFFE (4) 1234 答:(1) FAH=1111 1010B=250 (2) 5BH=101 1011B=91 (3) FFFEH=1111 1111 1111 1110B=65534 (4) 1234H=1 0010 0011 0100B=4660 1.4完成下列十六进制数的运算,并转换为十进制数进行校核: (1) 3A+B7 (2) 1234+AF (3) ABCD-FE (4) 7AB×6F 答:(1) 3A+B7H=F1H=241 (2) 1234+AFH=12E3H=4835 (3) ABCD-FEH=AACFH=43727 (4) 7AB×6FH=35325H=217893 1.5下列各数均为十进制数,请用8位二进制补码计算下列各题,并用十六进制数表示其运算结果。 (1) (-85)+76 (2) 85+(-76) (3) 85-76 (4) 85-(-76) (5) (-85)-76 (6) -85-(-76) 答:(1) (-85)+76=1010 1011B+0100 1100B=1111 0111B=0F7H;CF=0;OF=0 (2) 85+(-76)=0101 0101B+1011 0100B=0000 1001B=09H;CF=1;OF=0 (3) 85-76=0101 0101B-0100 1100B=0101 0101B+1011 0100B=0000 1001B=09H;CF=0;OF=0 0;OF=1 (5) (-85)-76=1010 1011B-0100 1100B=1010 1011B+1011 0100B=0101 1111B=5FH;CF=0;OF=1 0;OF=0 1.6下列各数为十六进制表示的8位二进制数,请说明当它们分别被看作是用补码表示的带符号数或无 符号数时,它们所表示的十进制数是什么? (1) D8 (2) FF 答:(1) D8H表示的带符号数为-40,D8H表示的无符号数为216; (2) FFH表示的带符号数为-1,FFH表示的无符号数为255。 1.7下列各数均为用十六进制表示的8位二进制数,请说明当它们分别被看作是用补码表示的数或字符 的ASCII码时,它们所表示的十进制数及字符是什么? (1) 4F (2) 2B (3) 73 (4) 59 答:(1) 4FH表示的十进制数为79,4FH表示的字符为O; (2) 2BH表示的十进制数为43,2BH表示的字符为+; (3) 73H表示的十进制数为115,73H表示的字符为s; (4) 59H表示的十进制数为89,59H表示的字符为Y。 1.8请写出下列字符串的ASCII码值。 For example, This is a number 3692. 答:46H 6FH 72H 20H 65H 78H 61H 6DH 70H 6CH 65H 2CH 0AH 0DH 54H 68H 69H 73H 20H 69H 73H 20H 61H 20H 6EH 75H 6DH 62H 65H 72H 20H 33H 36H 39H 32H 2EH 0AH 0DH

停车场管理系统C语言实现1

一.问题描述 1.实验题目: 设停车场是一个可停放n 辆汽车的狭长通道,且只有一个大门可供汽车进出。汽车在停车场内按车辆到达时间的先后顺序,依次由北向南排列(大门在最南端,最先到达的第一辆车停放在车场的最北端)。若停车场内已经停满n辆车,那么后来的车只能在门外的便道上等候。一旦有车开走,则排在便道上的第一辆车即可开入。当停车场内某辆车要离开时,在它之后进入的车辆必须先退出车场为它让路,待该辆车开出大门外,其他车辆再按原次序进入车场。每辆停放在车场的车在它离开停车场时必须按它停留的时间长短缴纳费用。试为停车场编制按上述要求进行管理的模拟程序。 要求:根据各结点的信息,调用相应的函数或者语句,将结点入栈入队,出栈或者出队。 二.需求分析 1.程序所能达到的基本可能: 程序以栈模拟停车场,以队列模拟车场外的便道,按照从终端读入数据的序列进行模拟管理。栈以顺序结构实现,队列以链表结构实现。同时另设一个栈,临时停放为给要离去的汽车让路而从停车场退出来的汽车。输入数据按到达或离去的时刻有序。当输入数据包括数据项为汽车的“到达”(‘A’表示)信息,汽车标识(牌照号)以及到达时刻时,应输出汽车在停车场内或者便道上的停车位置;当输入数据包括数据项为汽车的“离去”(‘D’表示)信息,汽车标识(牌照号)以及离去时刻时,应输出汽车在停车场停留的时间和应缴纳的费用(便道上停留的时间不收费);当输入数据项为(‘P’,0,0)时,应输出停车场的车数;当输入数据项为(‘W’, 0, 0)时,应输出候车场车数;当输入数据项为(‘E’, 0, 0),退出程序;若输入数据项不是以上所述,就输出"ERROR!"。 2.输入输出形式及输入值范围: 程序运行后进入循环,显示提示信息:“Please input the state,number and time of the car:”,提示用户输入车辆信息(“到达”或者“离开”,车牌编号,到达或者离开的时间)。若车辆信息为“到达”,车辆信息开始进栈(模拟停车场),当栈满,会显示栈满信息:“The parking place is full!”,同时车辆进队列(模拟停车

基础工程(第二版)第二章习题解答

习 题 【2-1】如图2-31所示地质土性和独立基础尺寸的资料,使用承载力公式计算持力层的承载力。若地下水位稳定由0.7m 下降1m ,降至1.7m 处,问承载力有何变化? 图2-31 习题2-1图 解:由图2-31可知: 基底处取土的浮重度 3/2.88.90.18'm kN w sat =-=-=γγγ 基底以上土的加权平均重度 3/0.133 .16.02.8)6.03.1(2.17m kN m =?+-?=γ 由020=k ?,查表2-6可得 66.5,06.3,51.0===c d b M M M 所以,持力层的承载力为 kPa c M d M b M f k c m d b a 9.64166.53.10.1306.38.12.851.0=?+??+??=++=γγ 若地下水下降1m 至1.7m ,则 基底以上土的重度为 3/2.17m kN m =γ 基底处土的重度为 3/0.18m kN m =γ 此时,持力层的承载力为 kPa c M d M b M f k c m d b a 0.86166.53.12.1706.38.10.1851.0=?+??+??=++=γγ

【2-2】某砖墙承重房屋,采用素混凝土(C10)条形基础,基础顶面处砌体宽度0b =490mm ,传到设计地面的荷载F k =220kN/m ,地基土承载力特征值f ak =144kPa ,试确定条形基础的宽度b 。 (1)按地基承载力要求初步确定基础宽度 假定基础埋深为d=1.2m ,不考虑地基承载力深度修正,即f a =f ak =144kPa m d f F b G a k 83.12 .120144220=?-=-≥γ,取b=1.9m 初步选定条形基础的宽度为1.9m 。 地基承载力验算: kPa f kPa b G F p a k k k 1448.1399 .12.19.120220=<=??+=+= 满足 无筋扩展基础尚需对基础的宽高比进行验算(其具体验算方法详见第三章),最后还需进行基础剖面设计。 (2)按台阶宽高比要求验算基础的宽度 初步选定基础的高度为H=300mm 基础采用C10素混凝土砌筑,基础的平均压力为kPa p k 8.139= 查表3-2,得允许宽高比0.12==H b tg α,则 m Htg b b 09.10.13.0249.020=???+=+≤α 不满足要求 m tg b b H 705.00 .1249.09.120=?-=-≥α 取H=0.8m m Htg b b 09.20.18.0249.020=??+=+≤α 此时地面离基础顶面为 1.2-0.8=0.4m>0.1m ,满足要求。

2015年清华大学826运筹学与统计学

2015年清华大学826运筹学与统计学(数学规划、应用随机模型、统计学各占1/3)考研复习参考书 科目:826 运筹学与统计学(数学规划、应用随机模型、统计学各占1/3)参考书:《运筹学(数学规划)(第3版)清华大学出版社,2004年1月 W.L.Winston 《运筹学》(应用随机模型)清华大学出版社,2004年2月 V.G. Kulkarni 《概率论与数理统计》(第1~9章)高等教育出版社,2001年盛聚等 考研复习方法,这里不详细展开。简单归纳为: 新祥旭考研提醒:首先,清楚考试明细,掌握真题,真题为本。通过真题,了解和熟知:考什么、怎么考、考了什么、没考什么;通过练习真题,了解:目前我的能力、复习过程中我的进步、我的考试目标。提醒一句:千万不要浪费大量时间做不相关的模拟题;千万不要把考研复习等同于做题目,搞题海战术。 其次,把握参考书,参考书为锚。弄懂、弄熟。考研复习如何才能成功?借用《卖油翁》里的一句话,那就是:手熟而已。明确考试之后,考研就基本上是一个熟悉吃透的过程。无论何时,参考书第一,不能轻视。所以,千万不要本末倒置,把做题凌驾于看书之上。如何才叫熟悉?我认为,要打破“讲速度,不讲效率”的做法,看了多少遍并不是检验熟悉与否的指标,合上书本,随时自我检测,能否心中有数、一问便知,这才是关键。 再次,制定计划,合理分配时间。不是每一本参考书都很重要,都一样重要,所以,在了解真题的基础上,要了解每一本书占多少分,如何命题考试,在此基础上,每一本参考书的主次轻重、复习方略也就清楚了,复习才不会像开摊卖药,平均用力。一个月制定一份计划书,每天写一句话鼓励自己,一个月调整一次复习重点,这都是必要的。 最后,快乐复习。考研复习是以什么样状态进行的,根源在于能否克服不良情绪。第一,报考对外汉语,你是因为喜欢这个专业吗?如果是,那么,就继续给自己这种暗示,那么你一定会发现,复习再紧张,也是愉悦的,因为你是为了兴趣而考研的;第二,规律的作息,不大时间战,消耗战,养精蓄锐。运动加休息,如果能每天都很规律,那么成功也就有了保障,负面情绪少了,效率也就高了。 总结为几个关键词,就是:知己知彼、本末分明。

清华大学出版社样书申请流程

清华大学出版社样书申请流程 尊敬的老师,您好: 为了使您对清华大学出版社的教材有比较全面的了解,更好地选择到适合您教学需要的教材,您可在我社清华教研网(https://www.doczj.com/doc/b73576126.html,/teacher)挑选与你专业相关的教材,我们将为选用清华版教材的老师免费提供样书。具体申请流程,请参见下文。 第一步:如果您不是我社教师服务频道会员,请首先注册为会员,届时您将享受到我社诸如免费索取样书、电子课件、申报教材选题意向、清华社各学科教材展示、试读等等优质服务。我们会在24小时之内,开通您的会员功能。(如您已是会员,请参阅第二步) 在注册页面输入邮件地址、昵称及密码后,在“请选择用户身份”一项请务必注意点选“高校教师”。 扩展出注册项后,请认真详实的按要求填写每一“*”号项后,点选“完成”,后台审批通过后,即可成为会员同时获赠300积分,用于换取各种教学资源。 点选“完善其它信息”并按要求填写,可额外获得200积分。 不明之处,请联系我社当地院校代表(请参阅教师服务频道“联系我们”一栏) 第二步:图书搜索 会员审批通过后,您可以在“文泉书局——清华教研”的页面点选“样书申请”(图一)或在“我的帐户”中的“教师服务”版块点选“可申请样书查询”(图二)均可,之后在对应的表单中输入要下载图书的书名或作者,点击“检索”(图三) 图一:

图二: 图三:

第三步:申请样书。 在查询结果中点击书名进入图书介绍页面,可以申请电子书、纸质书、配套资源等。(提示:申请电子书、申请纸书功能按钮只有教师会员并且在登录的状态下可见) 1 申请电子书:每成功申请1本电子书,扣减固定的100积分。在积分足够的情况下,只需填写申请信息提交后即可自动获得电子书,无需人工审批。(提示:积分不够可以继续申请,但需人工审批)

大学 C语言 停车场管理系统 设计c语言课程设计 (含调试图)

Xxxxx大学 xxxxxxxxxxx系 20xx-20xx学年第一学期 《C程序设计》课程设计 题目名称:停车场管理系统设计 姓名: 学号: 班级: 指导教师: 编写日期: 20 年1月5日—20 年1月31日 成绩:

目录 (一)需求分析 (3) 1-1停车 (3) 1-2取车 (3) 1-3功能的选择 (3) (二)总体设计(程序设计组成框图) (3) 2-1停车模块 (3) 2-2取车模块 (3) 2-3车辆信息浏览模块 (4) 2-4程序设计组成框图 (4) (三)详细设计 (4) 3-1停车场分析 (4) 3-2停车操作 (4) 3-3收费管理(取车) (5) 3-4车辆信息 (5) 3-5退出系统 (5) (四)程序运行结果测试与分析 (5) (五)结论与心得 (7) (六)参考文献 (7) (七)致谢 (8) 附录: (8)

(一)需求分析 1-1停车 车辆信息要用文件存储,因而要提供文件的输入输出操作。 1-2取车 当车离开时,要删除文件中该车的信息,因而要提供文件的删除操作。 1-3功能的选择 提供现实操作和用键盘式菜单实现功能选择。 (二)总体设计(程序设计组成框图) 2-1停车模块 对车辆信息赋值,分配前检查车位使用情况(按行查找park 数组,元素为0 表示车位为空,则允许分配)。把新添加的车辆信息以追加的方式写入汽车信息文件,并更改汽车信息文件中其他汽车信息的停车时间(停车时间加5)。 2-2取车模块 计算费用(停车费用=停车时间*0.2 元),从文件中删除该车信息。并将该车位对应的二位数组变量设为0,表示该车位可用。输出提示信息:是否输出停车费用总计?(Y/N)如果选择Y,则输出停车费用,否则回到上级菜单。

大全课后题答案清华大学出版社沈美明版

大全课后题答案清华大 学出版社沈美明版 Document number【AA80KGB-AA98YT-AAT8CB-2A6UT-A18GG】

第一章. +习题 1.1用降幂法和除法将下列十进制数转换为二进制数和十六进制数: (1) 369 (2) 10000 (3) 4095 (4) 32767 答:(1) 369=1 0111 0001B=171H (2) 10000=10 0111 0001 0000B=2710H (3) 4095=1111 1111 1111B=FFFH (4) 32767=111 1111 1111 1111B=7FFFH 1.2将下列二进制数转换为十六进制数和十进制数: (1) 10 1101 (2) 1000 0000 (3) 1111 1111 1111 1111 (4) 1111 1111 答:(1) 10 1101B=2DH=45 (2) 1000 0000B=80H=128 (3) 1111 1111 1111 1111B=FFFFH=65535 (4) 1111 1111B=FFH=255 1.3将下列十六进制数转换为二进制数和十进制数: (1) FA (2) 5B (3) FFFE (4) 1234 答:(1) FAH=1111 1010B=250 (2) 5BH=101 1011B=91 (3) FFFEH=1111 1111 1111 1110B=65534 (4) 1234H=1 0010 0011 0100B=4660 1.4完成下列十六进制数的运算,并转换为十进制数进行校核: (1) 3A+B7 (2) 1234+AF (3) ABCD-FE (4) 7AB×6F 答:(1) 3A+B7H=F1H=241 (2) 1234+AFH=12E3H=4835 (3) ABCD-FEH=AACFH=43727 (4) 7AB×6FH=35325H=217893 1.5下列各数均为十进制数,请用8位二进制补码计算下列各题,并用十六进制数表示其运算结 果。 (1) (-85)+76 (2) 85+(-76) (3) 85-76 (4) 85-(-76) (5) (-85)-76 (6) -85-(-76) 答:(1) (-85)+76=1010 1011B+0100 1100B=1111 0111B=0F7H;CF=0;OF=0 (2) 85+(-76)=0101 0101B+1011 0100B=0000 1001B=09H;CF=1;OF=0 (3) 85-76=0101 0101B-0100 1100B=0101 0101B+1011 0100B=0000 1001B=09H;CF=0; OF=0 0;OF=1 (5) (-85)-76=1010 1011B-0100 1100B=1010 1011B+1011 0100B=0101 1111B=5FH; CF=0;OF=1 0;OF=0 1.6下列各数为十六进制表示的8位二进制数,请说明当它们分别被看作是用补码表示的带符号 数或无符号数时,它们所表示的十进制数是什么 (1) D8 (2) FF 答:(1) D8H表示的带符号数为 -40,D8H表示的无符号数为216; (2) FFH表示的带符号数为 -1, FFH表示的无符号数为255。

C语言课程设计报告停车场管理系统

停车场管理一 一.要求: 1.设计一个停车场用长度为N的堆栈来模拟。由于停车场内如有某辆车要开走,在它之后进来的车都必须先退出为它让道,待其开出停车场后,这些车再依原来的顺序进入。 2.程序输出每辆车到达后的停车位置,以及某辆车离开停车场时应交纳的费用和它在停车场内停留的时间。 二、程序中所采用的数据结构及存储结构的说明 以栈模拟停车场,以队列模拟车场外的便道,按照从终端读入的输入数据序列进行模拟管理。栈以顺序结构实现,队列以链表实现。 程序中分别采用了“栈”和“队列”作为其存储结构。 “栈”的定义可知,每一次入栈的元素都在原栈顶元素之上成为新的元素,每一次出栈的元素总是当前栈顶元素使次栈元素成为新的栈顶元素,即最后进栈者先出栈。程序中采用的结构是: typedef struct NODE{ CarNode *stack[MAX+1]; int top; }SeqStackCar; /*模拟车库*/ “队列”是限定所有插入操作只能在表的一端进行,而所有的删除操作都只能在表的另一端进行。插入端叫队尾,删除端叫对头。按先进先出规则进行。程序中采用的结构是:typedef struct Node{ QueueNode *head; QueueNode *rear; }LinkQueueCar; /*模拟通道*/ 三、算法的设计思想 由于停车场是一个狭窄通道,而且只有一个大门可供汽车进出,问题要求汽车停车

场内按车辆到达时间的先后顺序,依次由北向南排列。由此很容易联想到数据结构中的堆栈模型,因此可首先设计一个堆栈,以堆栈来模拟停车场,又每个汽车的车牌号都不一样,这样一来可以根据车牌号准确找到汽车位置,所以堆栈里的数据元素我设计成汽车的车牌号。当停车场内某辆车要离开时,在他之后进入的车辆必须先退出车场为它让路,待该辆车开出大门外,其他车辆再按原次序进入停车场。这是个一退一进的过程,而且让道的汽车必须保持原有的先后顺序,因此可再设计一个堆栈,以之来暂时存放为出站汽车暂时让道的汽车车牌号。当停车场满后,继续进来的汽车需要停放在停车场旁边的便道上等候,若停车场有汽车开走,则按排队的先后顺序依次进站,最先进入便道的汽车将会最先进入停车场,这完全是一个先进先出模型,因此可设计一个队列来模拟便道,队列中的数据元素仍然设计成汽车的车牌号。另外,停车场根据汽车在停车场内停放的总时长来收费的,在便道上的时间不计费,因此必须记录车辆进入停车场时的时间,车辆离开停车场时的时间不需要记录,当从终端输入时可直接使用。由于时间不象汽车一样需要让道,我设计了一个顺序表来存放时间。又用顺序表用派生法设计了一个堆栈,恰好满足上面模拟停车场的需要。 四.设计原理、框图

第四版运筹学部分课后习题解答

运筹学部分课后习题解答P47 1.1 用图解法求解线性规划问题 a) 12 12 12 12 min z=23 466 ..424 ,0 x x x x s t x x x x + +≥ ? ? +≥ ? ?≥ ? 解:由图1可知,该问题的可行域为凸集MABCN,且可知线段BA上的点都为 最优解,即该问题有无穷多最优解,这时的最优值为 min 3 z=2303 2 ?+?= P47 1.3 用图解法和单纯形法求解线性规划问题 a) 12 12 12 12 max z=10x5x 349 ..528 ,0 x x s t x x x x + +≤ ? ? +≤ ? ?≥ ? 解:由图1可知,该问题的可行域为凸集OABCO,且可知B点为最优值点, 即 1 12 122 1 349 3 528 2 x x x x x x = ? += ?? ? ?? +== ?? ? ,即最优解为* 3 1, 2 T x ?? = ? ?? 这时的最优值为 max 335 z=1015 22 ?+?=

单纯形法: 原问题化成标准型为 121231241234 max z=10x 5x 349 ..528,,,0x x x s t x x x x x x x +++=?? ++=??≥? j c → 10 5 B C B X b 1x 2x 3x 4x 0 3x 9 3 4 1 0 0 4x 8 [5] 2 0 1 j j C Z - 10 5 0 0 0 3x 21/5 0 [14/5] 1 -3/5 10 1x 8/5 1 2/5 0 1/5 j j C Z - 1 0 - 2 5 2x 3/2 0 1 5/14 -3/14 10 1x 1 1 0 -1/7 2/7 j j C Z - -5/14 -25/14

数据库原理与应用课后答案 清华大学出版社教材.

第一章 2.简述数据、数据库、数据库管理系统、数据库应用系统的概念。 答:①数据是描述事物的符号记录,是信息的载体,是信息的具体表现形式。 ②数据库就是存放数据的仓库,是将数据按一定的数据模型组织、描述和存储,能够自动进行查询和修改的数据集合。 ③数据库管理系统是数据库系统的核心,是为数据库的建立、使用和维护而配置的软件。它建立在操作系统的基础上,位于用户与操作系统之间的一层数据管理软件,它为用户或应用程序提供访问数据库的方法,包括数据库的创建、查询、更新及各种数据控制等。 ④凡使用数据库技术管理其数据的系统都称为数据库应用系统。 3.简述数据库管理系统的功能。 答:数据库管理系统是数据库系统的核心软件,一般说来,其功能主要包括以下5个方面。 (1) 数据定义和操纵功能

(2) 数据库运行控制功能 (3) 数据库的组织、存储和管理 (4) 建立和维护数据库 (5) 数据通信接口 4.简述数据库的三级模式和两级映像。 答:为了保障数据与程序之间的独立性,使用户能以简单的逻辑结构操作数据而无需考虑数据的物理结构,简化了应用程序的编制和程序员的负担,增强系统的可靠性。通常DBMS将数据库的体系结构分为三级模式:外模式、模式和内模式。 模式也称概念模式或逻辑模式,是对数据库中全部数据的逻辑结构和特征的描述,是所有用户的公共数据视图。 外模式也称子模式或用户模式,它是对数据库用户能够看见和使用的局部数据的逻辑结构和特征的描述。 内模式也称存储模式或物理模式,是对数据物理结构和存储方式的描述,是数据在数据库内部的表示方式,一个数据库只有一个内模式。 三级模式结构之间差别往往很大,为了实现这3个抽

停车场管理系统 C语言实习报告

C 语 言 课 程 实 习 报 告 【要求】 设有一个可以停放n辆汽车的狭长停车场,它只有一个大门可以供车辆进出。车辆按到达停车场时间的早晚依次从停车场最里面向大门口停放(最先到达的第一辆车放在停车场的最里面)。如果停车场已放满n辆车,则后来的车辆只能在停车场大门外的便道上等待,一旦停车场内有车开走,则排在便道上的第一辆车就进入停车场。停车场内如有某辆车要开走,在它之后进来的车都必须先退出停车场为它让路,待其开出停车场后,这些车辆再依原来的次序进场。每辆车在离开停车场时,都应依据它在停车场内停留的时间长短交费。如果停留在便道上的车未进停车场就要离去,允许其离去,不收停车费,并且仍然保持在便道上等待的车辆的次序。编制一程序模拟停车场管理。 【提示】 汽车的模拟输入信息格式可以是:(到达/离去,汽车牌照号码,到达/离去的时刻)。 基本要求:要求程序输出每辆车到达后的停车位置(停车场或便道上),以及某

辆车离开停车场时应交纳的费用和它在停车场内停留的时间。 根据题目要求,停车场可以用一个长度为n 的堆栈来模拟。由于停车场内如有某辆车要开走,在它之后进来的车辆都必须先退出停车场为它让路,待其开出停车场后,这些车辆再依原来的次序进场,所以可以设两个堆栈。 一、需求分析 根据题目要求,程序应该提供“到达/离去,汽车牌照号码,到达/离去”的输入、输出操作;在程序中需要浏览停车场的车位信息,应提供显示、查找、排序等操作;此外还应提供键盘式菜单实现功能选择。 二、总体设计: 根据需求分析,可以将系统的设计分为以下五大模块:(1)车辆进入;(2)车辆退出; (3)车辆等待;(4)车辆查询;(5)退出。 一、详细设计: 主函数中只包含菜单函数,菜单部分单独写成函数,只提供输入、功能处理和输出部分的函数调用,其中各功能模块用菜单方式选择。 [程序] #define N 30 /*等待车辆*/ #define M 20 /*车位*/ #define P 2 /*单位时间所收费用*/ #include #include #include struct cars /*定义车辆信息*/ { char state; int num; int in_time; 停车场 管理系统 车辆进入 车辆退出 车辆等待 车辆信息 显示 车辆查询 退出系统

机械制造技术基础(第2版)第二章课后习题答案

《机械制造技术基础》部分习题参考解答第二章金属切削过程 2-1什么是切削用量三要素?在外圆车削中,它们与切削层参数有什么关系?答: 切削用量三要素是指切削速度v、进给量f、背吃刀量a p(切削xx)。 在外圆车削中,它们与切削层参数的关系是: 切削层公称厚度:hD fsin r切削层公称宽度:bD a p/sin r切削层公称横截面积:AD fap2-2确定外圆车刀切削部分几何形状最少需要几个基本角度?试画图标出这些基本角度。 答: 确定外圆车刀切削部分几何形状最少需要7个基本角度: 前角、后角、主偏角、副偏角、副前角、副后角和刃倾角,这些基本角度如下图所示(其中副前角、副后角不做要求)。 2-3试述刀具标注角度和工作角度的区别。为什么车刀作横向切削时,进给量取值不能过大? 答: 刀具标注角度是在静态情况下在刀具标注角度参考系中测得的角度;而刀具工作角度是在刀具工作角度参考系中(考虑了刀具安装误差和进给运动影响等因素)确定的刀具角度。车刀作横向切削时,进给量取值过大会使切削速度、基面变化过大,导致刀具实际工作前角和工作后角变化过大,可能会使刀具工作后角变为负值,不能正常切削加工(P23)。 2-4刀具切削部分的材料必须具备哪些基本性能?

答: (P24) (1)高的硬度和耐磨性; (2)足够的强度和韧性; (3)高耐热性; (4)良好的导热性和耐热冲击性能; (5)良好的工艺性。 2-5常用的硬质合金有哪几类?如何选用? 答: (P26)常用的硬质合金有三类: P类(我国钨钴钛类YT),主要用于切削钢等长屑材料;K类(我国钨钴类YG),主要用于切削铸铁、有色金属等材料;M类(我国通用类YW),可以加工铸铁、有色金属和钢及难加工材料。 2-6怎样划分切削变形区?第一变形区有哪些变形特点? 答: 切削形成过程分为三个变形区。第一变形区切削层金属与工件分离的剪切滑移区域,第二变形区前刀面与切屑底部的摩擦区域;第三变形区刀具后刀面与已加工表面的摩擦区域。 第一变形区的变形特点主要是: 金属的晶粒在刀具前刀面推挤作用下沿滑移线剪切滑移,晶粒伸长,晶格位错,剪切应力达到了材料的屈服极限。 2-7什么是积屑瘤?它对加工过程有什么影响?如何控制积屑瘤的产生?答:

经典C源码 之 停车场管理系统

停车场管理系统 #include "stdio.h" #define STACKSIZE 2 struct Car { char Label; float InTime; }; struct StackCar { struct Car *Top; struct Car *BottomStack; int Size; }; int StackInitial(struct StackCar *stackcar) { stackcar->BottomStack=(struct Car *)malloc(STACKSIZE*sizeof(struct Car)); if(!(stackcar->BottomStack)) return 0; stackcar->Top=stackcar->BottomStack; stackcar->Size=STACKSIZE; return 1; } int StackEmpty(struct StackCar stackcar) { if(stackcar.Top==stackcar.BottomStack) return 1; return 0; } int StackFull(struct StackCar stackcar) { if(stackcar.Top-stackcar.BottomStack>=STACKSIZE) return 1; return 0; } int Push(struct StackCar *stackcar,struct Car car) { if(stackcar->Top-stackcar->BottomStack>=STACKSIZE) return 0; *(stackcar->Top++)=car; return 1; } int Pop(struct StackCar *stackcar,struct Car *car)

相关主题
文本预览
相关文档 最新文档