📄 6.4.lst
字号:
C51 COMPILER V7.09 6_4 08/24/2005 09:32:56 PAGE 1
C51 COMPILER V7.09, COMPILATION OF MODULE 6_4
OBJECT MODULE PLACED IN 6.4.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE 6.4.c BROWSE DEBUG OBJECTEXTEND
line level source
1 #include <reg51.h>
2 #include <intrins.h>
3 #include <stdio.h>
4 #include <ctype.h>
5
6 #define LongToBin(n) \
7 ((n >> 21) & 0x80) | \
8 ((n >> 18) & 0x40) | \
9 ((n >> 15) & 0x20) | \
10 ((n >> 12) & 0x10) | \
11 ((n >> 9) & 0x08) | \
12 ((n >> 6) & 0x04) | \
13 ((n >> 3) & 0x02) | \
14 ((n ) & 0x01)
15
16
17 #define Bin(n) LongToBin(0x##n##l)
18
19 //BCD转HEX
20 //0<bcd_data<0x255
21 unsigned char BCD2HEX(unsigned int bcd_data)
22 {
23 1 unsigned char temp;
24 1 temp=((bcd_data>>8)*100)|((bcd_data>>4)*10)|(bcd_data&0x0f);
25 1 return temp;
26 1 }
27 // HEX转BCD
28 //0<bcd_data<0x255
29 unsigned int HEX2BCD(unsigned char hex_data)
30 {
31 1 unsigned int bcd_data;
32 1 unsigned char temp;
33 1 temp=hex_data%100;
34 1 bcd_data=((unsigned int)hex_data)/100<<8;
35 1 bcd_data=bcd_data|temp/10<<4;
36 1 bcd_data=bcd_data|temp%10;
37 1 return bcd_data;
38 1 }
39
40 void main(void)
41 {
42 1 unsigned int c;
43 1
44 1 c= Bin(10101001); // c = 0xA9
45 1 c=BCD2HEX(0x255); //255 转成HEX为0xff
46 1 c=HEX2BCD(0xff); //0xff 转成BCD码为 255
47 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 95 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- ----
C51 COMPILER V7.09 6_4 08/24/2005 09:32:56 PAGE 2
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 + -