大小写字母互换

例7.3 大小写字母互换

(1)设计要求:设内存数据区有大小写混合英文ASCII码字母。将其转换成全部大写和全部小写,并在屏幕显示这3种字母。字母显示用DOS功能9号调用。

(2)程序算法:字母A~Z的ASCII码是41H~5AH,字母a~z的ASCII是61H~7AH。两种字母转换只需加减20H即可。

(3)程序清单

1: TITLE EX3

2: PAGE 50,70

3: ;..................................

4: DAT SEGMENT PARA 'DAT'

5: D0 DB 0DH,0AH

6: D1 DB 'dfdsjfhjsDHDSFHJSDHSJ','$'

7: DAT ENDS

8:;…………………………

9: STAC SEGMENT

10: STA1 DW 100 DUP(?)

11: STAC ENDS

12: ;…………………………………

13: CODE SEGMENT PARA 'CODE'

14: ASSUME CS:CODE,DS:DAT

15: ASSUME SS:STAC,ES:DAT

16: STAR PROC FAR

17: PUSH DS

18: XOR AX,AX

19: PUSH AX

20: MOV AX,DAT

21: MOV DS,AX

22: MOV ES,AX

23: ;………………………………………

24: CALL TT

25: LEA DI,D1

26: CALL TT1

27: CALL TT

28: LEA DI,D1

29: CALL TT2

30: CALL TT

31: RET

32: STAR ENDP

33: ;……………………………………

34: TT1 PROC

35: GO: MOV AL,[DI]

36: CMP AL,'$'

37: JZ GO2

38: CMP AL,'A'

39: JB GO1

40: CMP AL,'Z'

41: JA GO1

42: ADD BYTE PTR [DI],20H

43: GO1: INC DI

44: JMP GO

45: GO2: RET

46: TT1 ENDP

47: ;………………………………

48: TT2 PROC

49: GQ: MOV AL,[DI]

50: CMP AL,'$'

51: JZ GQ2

52: CMP AL,'a'

53: JB GQ1

54: CMP AL,'z'

55: JA GQ1

56: SUB BYTE PTR [DI],20H

57: GQ1: INC DI

58: JMP GQ

59: GQ2: RET

60: TT2 ENDP

61: ;……………………………

62: TT PROC

63: LEA DX,D1

64: MOV AH,9

65: INT 21H

66: RET

67: TT ENDP

68: CODE ENDS

69: END STAR

例7.3 大小写字母互换

(1)设计要求:设内存数据区有大小写混合英文ASCII码字母。将其转换成全部大写和全部小写,并在屏幕显示这3种字母。字母显示用DOS功能9号调用。

(2)程序算法:字母A~Z的ASCII码是41H~5AH,字母a~z的ASCII是61H~7AH。两种字母转换只需加减20H即可。

(3)程序清单

1: TITLE EX3

2: PAGE 50,70

3: ;..................................

4: DAT SEGMENT PARA 'DAT'

5: D0 DB 0DH,0AH

6: D1 DB 'dfdsjfhjsDHDSFHJSDHSJ','$'

7: DAT ENDS

8:;…………………………

9: STAC SEGMENT

10: STA1 DW 100 DUP(?)

11: STAC ENDS

12: ;…………………………………

13: CODE SEGMENT PARA 'CODE'

14: ASSUME CS:CODE,DS:DAT

15: ASSUME SS:STAC,ES:DAT

16: STAR PROC FAR

17: PUSH DS

18: XOR AX,AX

19: PUSH AX

20: MOV AX,DAT

21: MOV DS,AX

22: MOV ES,AX

23: ;………………………………………

24: CALL TT

25: LEA DI,D1

26: CALL TT1

27: CALL TT

28: LEA DI,D1

29: CALL TT2

30: CALL TT

31: RET

32: STAR ENDP

33: ;……………………………………

34: TT1 PROC

35: GO: MOV AL,[DI]

36: CMP AL,'$'

37: JZ GO2

38: CMP AL,'A'

39: JB GO1

40: CMP AL,'Z'

41: JA GO1

42: ADD BYTE PTR [DI],20H

43: GO1: INC DI

44: JMP GO

45: GO2: RET

46: TT1 ENDP

47: ;………………………………

48: TT2 PROC

49: GQ: MOV AL,[DI]

50: CMP AL,'$'

51: JZ GQ2

52: CMP AL,'a'

53: JB GQ1

54: CMP AL,'z'

55: JA GQ1

56: SUB BYTE PTR [DI],20H

57: GQ1: INC DI

58: JMP GQ

59: GQ2: RET

60: TT2 ENDP

61: ;……………………………

62: TT PROC

63: LEA DX,D1

64: MOV AH,9

65: INT 21H

66: RET

67: TT ENDP

68: CODE ENDS

69: END STAR


相关文章

  • 2012武汉小升初语文知识点大汇总
  • 2012武汉小升初语文知识点大汇总 第一部分.汉 语 拼 音 一.复习要点. 1.正确认读声母.韵母,记住16个整体认读音节. 2.熟记<汉语拼音字母表>,记住26个大.小写字母的写法. 3.熟练.准确地拼读音节,借助汉语拼音识 ...查看


  • 26个字母的故事[1]
  • 26个字母的故事 2010-05-08 08:29 从公元前3000年左右开始,古埃及的人们就在使用文字(象形文字)表示神,人,动植物,自然界的形态(山,河等),来表示装饰品,武器,农具,日用品等 的形状了.该象形文字不仅仅给现在的字母表, ...查看


  • 英语字母的来源
  • 我们都知道汉字是象形文字,但如果说英语也是象形文字,你一定会以为纯是无稽之谈.其实,追根溯源,英语的26个字母确实来自于象形文字.这26个字母最初起源于埃及象形文字,后由腓尼基人改进发明了腓尼基字母,希腊人对腓尼基字母加以改革后创造了希腊字 ...查看


  • 26个字母学习的趣味资料
  • 我们都知道汉字是象形文字,但如果说英语也是象形文字,你一定会以为纯是无稽之谈.其实,追根溯源,英语的26个字母确实来自于象形文字.这26个字母最初起源于埃及象形文字,后由腓尼基人改进发明了腓尼基字母,希腊人对腓尼基字母加以改革后创造了希腊字 ...查看


  • 26英文字母由来01
  • 英文中26个字母的本源是什么? kyoichi886发表于: 2007-3-16 12:50来源:皆能颂之语学网 罗马字的产生从西元前3000年左右开始,古埃及的人们就在使用文字(象形文字)表示神,人,动植物,自然界的形态(山,河等),来表 ...查看


  • 公差与表面粗糙度论文(已发表)
  • 公差与表面粗糙度 重庆五一高级技工学校 张强 摘要:随着现代制造技术的高速发展,运用到制造业当中的设备也越来越多,精度越来越高,而制造业也需要更多更先进的设备来满足发展.但是无论加工技术怎么发展,怎么改进,它们都有一个共同的目标,那就是:提 ...查看


  • 互换性的概念
  • 互换性的概念 概念:同一规格的一批零部件,任取其一,不经任何挑选和修配就能装在机器上,并能满足其使用功能要求的特性叫做互换性. 分类:互换性按其互换程度分为完全互换和不完全互换. 定义:完全互换-装配时不需挑选和修配.不完全互换-装配时允许 ...查看


  • 第八章 螺纹结合的公差与检测
  • 第八章 螺纹结合的公差与检测 一. 填空题 1.螺纹按其牙型分类,可分为(三角形) 螺纹.(梯形)螺纹.(锯齿形)螺纹和(矩形)螺纹等. 2.螺纹按用途分类,可分为(紧固)螺纹.(转动)螺纹.(管用)螺纹和(专门用)螺纹. 3.普通螺纹结合 ...查看


  • 尺寸链 计算方法
  • 第十章 装配精度与加工精度分析 任何机械产品及其零部件的设计,都必须满足使用要求所限定的设计指标,如传动关系.几何结构及承载能力等等.此外,还必须进行几何精度设计.几何精度设计就是在充分考虑产品的装配技术要求与零件加工工艺要求的前提下,合理 ...查看


热门内容