?? main.lst
字號:
C51 COMPILER V7.01 MAIN 06/06/2004 20:06:38 PAGE 1
C51 COMPILER V7.01, COMPILATION OF MODULE MAIN
OBJECT MODULE PLACED IN main.OBJ
COMPILER INVOKED BY: d:\Keil\C51\BIN\C51.EXE main.c BROWSE DEBUG OBJECTEXTEND
stmt level source
1 //**********************************************************************
2 //功能 : BCD碼轉十六進制,十六進制轉BCD碼
3 //作者 : lihj
4 //創建日期 : 2004-06-05
5 //版本 : V1.0
6 //修改記錄 :
7 //***********************************************************************
8
9 //函數聲明
10 char Hex2BCD(char); //十六進制轉BCD
11 char BCD2Hex(char); //BCD轉十六進制
12
13 //主程序
14 void main(void) //不修改啟動代碼的情況下,主程序必須命名為main
15 {
16 1 //定義變量,注意變量名盡可能取的有意義,以增強程序可讀性
17 1 char HexTypeData; //十六進制變量
18 1 char BcdTypeData; //BCD碼
19 1 char TestResult1; //轉換結果1
20 1 char TestResult2; //轉換結果2
21 1
22 1 HexTypeData = 0x0c; //這條語句等價于HexTypeData = 12;
23 1 //十六進制0x0c,相當于BCD碼1 2
24 1 BcdTypeData = 0x12; //BCD碼12,對應于十六進制0x0c
25 1
26 1 //通過調用函數(子程序)來獲取轉換結果
27 1 TestResult1 = Hex2BCD(HexTypeData); //將變量HexTypeData中的值轉換成BCD碼存儲
28 1
29 1 TestResult2 = BCD2Hex(BcdTypeData); //將變量BcdTypeData轉換成十六進制
30 1
31 1 while(1); //結束測試,在此死循環等待
32 1 }
33
34 //十六進制轉BCD
35 char Hex2BCD(char a)
36 {
37 1 unsigned char t_h,t_l;
38 1
39 1 t_h = a/10;
40 1 t_l = a - t_h*10;
41 1
42 1 a = (t_h<<4) + t_l;
43 1
44 1 return(a);
45 1 }
46
47 //BCD轉十六進制
48 char BCD2Hex(char a)
49 {
50 1 unsigned char t_h,t_l;
51 1
52 1 t_h = (a&0xf0)>>4;
53 1 t_l = a&0x0f;
54 1
55 1 a = t_h*10 + t_l;
C51 COMPILER V7.01 MAIN 06/06/2004 20:06:38 PAGE 2
56 1
57 1 return(a);
58 1 }
59
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 77 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- 3
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -