📄 mul_div.lst
字号:
C51 COMPILER V7.06 MUL_DIV 11/17/2006 09:08:34 PAGE 1
C51 COMPILER V7.06, COMPILATION OF MODULE MUL_DIV
OBJECT MODULE PLACED IN mul_div.OBJ
COMPILER INVOKED BY: E:\keil\C51\BIN\C51.EXE mul_div.c BROWSE DEBUG OBJECTEXTEND
stmt level source
1 /**************************************
2 File : MUL_DIV.C
3 Project : BDTRV20_MCU_V07
4 Description : 大数除法运算,a数组中为被除数的16进制,每一个字节中只有大数的4位,从高位排起。返回商
5 Created : 2006.11.7
6 Last updata :
7 Author : Sunzehui sunzehui@zzvcom.com
8 Compile Tool : Keil uVision2
9 Target Device : SST89V564RD
10 Circuit Board : BD7700
11 ************************************
12 Modification History
13 ************************************
14 Version : v2.0
15 Date : MM/DD/YYYY
16 Modifier :
17 Description :
18
19 **********************************
20 -- Copyright (c)
21 *************************************/
22
23 extern unsigned long mul_div(unsigned char a[16],unsigned long divisor)
24 {
25 1 unsigned long xdata temp;//余数
26 1 unsigned long xdata quot=0;//商
27 1 char i,cnt;
28 1 for(i=7;i>=0;i--)
29 1 {
30 2 temp=temp<<4;
31 2 temp=temp+a[7-i];
32 2 }//提取高四个字节
33 1 for (i=7;i<16;i++)
34 1 {
35 2 cnt=0;
36 2 while(temp>=divisor) //还可以继续减
37 2 {
38 3 cnt++;
39 3 temp=temp-divisor;
40 3 }
41 2 quot=quot<<4;
42 2 quot=quot|cnt;//取得商值
43 2 temp=temp<<4;
44 2 temp=temp+a[i+1];
45 2 }
46 1 return quot;
47 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 403 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- 8
PDATA SIZE = ---- ----
DATA SIZE = ---- 9
C51 COMPILER V7.06 MUL_DIV 11/17/2006 09:08:34 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 + -