??? 01/06/06 08:50 Read: times |
#106679 - P1 = 0x06 using SDCC. Responding to: ???'s previous message |
Hello P Ravi,
I compiled your program using SDCC.EXE (see below hex listing) and ran it threw the JSIM.EXE simulator and found P1 equals 0x06. The same results attained by Mr. Raja Sekhar using Keil. I added the following line of code to your program at the end so that it will reach a stop point. for(;;){} // hang here forever Regards, Charles Bannister #include<8052.h> void main(void){ unsigned int i = 0xffff; unsigned char j = 0xff; TH0 = 0xff; TL0 = 0xff; i = TH0; // i = j; i = i << 8; P1 = i/10000; // P1 should display 6 (IT DOES!-Charlie) for(;;){} // hang here forever } ================================================== ; ravi.asm org 0 X0000: ljmp X0082 ; 0000 02 00 82 reti ; 0003 32 org 0bh reti ; 000b 32 org 13h reti ; 0013 32 org 1bh reti ; 001b 32 org 23h reti ; 0023 32 org 2bh reti ; 002b 32 X002c: lcall X0031 ; 002c 12 00 31 X002f: sjmp X002f ; 002f 80 fe X0031: mov th0,#0ffh ; 0031 75 8c ff mov tl0,#0ffh ; 0034 75 8a ff mov r2,th0 ; 0037 aa 8c mov r3,#0 ; 0039 7b 00 mov rb0r3,r2 ; 003b 8a 03 mov r2,#0 ; 003d 7a 00 mov rb1r0,#10h ; 003f 75 08 10 mov rb1r1,#27h ; 0042 75 09 27 mov dpl,r2 ; 0045 8a 82 mov dph,r3 ; 0047 8b 83 lcall X0055 ; 0049 12 00 55 mov r2,dpl ; 004c aa 82 mov r3,dph ; 004e ab 83 mov p1,r2 ; 0050 8a 90 ;=======> R2 = 0x06 X0052: sjmp X0052 ; 0052 80 fe ;(Using JSIM.EXE) ret ; 0054 22 X0055: mov r2,#10h ; 0055 7a 10 clr a ; 0057 e4 mov r3,a ; 0058 fb mov r4,a ; 0059 fc X005a: mov a,dpl ; 005a e5 82 add a,acc ; 005c 25 e0 mov dpl,a ; 005e f5 82 mov a,dph ; 0060 e5 83 rlc a ; 0062 33 mov dph,a ; 0063 f5 83 mov a,r3 ; 0065 eb rlc a ; 0066 33 mov r3,a ; 0067 fb mov a,r4 ; 0068 ec rlc a ; 0069 33 mov r4,a ; 006a fc mov a,r3 ; 006b eb subb a,rb1r0 ; 006c 95 08 mov b,a ; 006e f5 f0 mov a,r4 ; 0070 ec subb a,rb1r1 ; 0071 95 09 jc X007b ; 0073 40 06 mov r4,a ; 0075 fc mov r3,b ; 0076 ab f0 orl dpl,#1 ; 0078 43 82 01 X007b: djnz r2,X005a ; 007b da dd ret ; 007d 22 X007e: mov dpl,#0 ; 007e 75 82 00 ret ; 0081 22 X0082: mov sp,#9 ; 0082 75 81 09 lcall X007e ; 0085 12 00 7e mov a,dpl ; 0088 e5 82 jz X008f ; 008a 60 03 ljmp X002c ; 008c 02 00 2c X008f: mov r1,#0 ; 008f 79 00 mov a,r1 ; 0091 e9 orl a,#0 ; 0092 44 00 jz X00b1 ; 0094 60 1b mov r2,#0 ; 0096 7a 00 mov dptr,#X00ca ; 0098 90 00 ca mov r0,#0 ; 009b 78 00 mov p2,#0 ; 009d 75 a0 00 X00a0: clr a ; 00a0 e4 movc a,@a+dptr ; 00a1 93 movx @r0,a ; 00a2 f2 inc dptr ; 00a3 a3 inc r0 ; 00a4 08 cjne r0,#0,X00aa ; 00a5 b8 00 02 inc p2 ; 00a8 05 a0 X00aa: djnz r1,X00a0 ; 00aa d9 f4 djnz r2,X00a0 ; 00ac da f2 mov p2,#0ffh ; 00ae 75 a0 ff X00b1: mov r0,#0 ; 00b1 78 00 mov a,r0 ; 00b3 e8 orl a,#0 ; 00b4 44 00 jz X00c4 ; 00b6 60 0c mov r1,#0 ; 00b8 79 00 mov dptr,#X0000 ; 00ba 90 00 00 clr a ; 00bd e4 X00be: movx @dptr,a ; 00be f0 inc dptr ; 00bf a3 djnz r0,X00be ; 00c0 d8 fc djnz r1,X00be ; 00c2 d9 fa X00c4: mov @r0,a ; 00c4 f6 djnz r0,X00c4 ; 00c5 d8 fd ljmp X002c ; 00c7 02 00 2c X00ca equ 0cah end ================================================== :040000000200823246 :01000B0032C2 :0100130032BA :01001B0032B2 :0100230032AA :01002B0032A2 :1000820075810912007EE582600302002C7900E985 :100092004400601B7A009000CA780075A000E493C7 :1000A200F2A308B8000205A0D9F4DAF275A0FF782D :1000B20000E84400600C7900900000E4F0A3D8FC52 :0800C200D9FAF6D8FD02002C6A :10002C0012003180FE758CFF758AFFAA8C7B008ACA :10003C00037A007508107509278A828B8312005584 :10004C00AA82AB838A9080FE227A10E4FBFCE582C4 :10005C0025E0F582E58333F583EB33FBEC33FCEBE6 :10006C009508F5F0EC95094006FCABF0438201DAFB :06007C00DD227582002266 |
Topic | Author | Date |
SDCC C code problem... | 01/01/70 00:00 | |
can you generate an ASM file of the same | 01/01/70 00:00 | |
Last line | 01/01/70 00:00 | |
but how it works whne j is assigned ... | 01/01/70 00:00 | |
its working fine in keil | 01/01/70 00:00 | |
P1 = 0x06 using SDCC. | 01/01/70 00:00 | |
P1 = 0x06 using SDCC | 01/01/70 00:00 | |
Screen Dump showing P1 = 0x06 | 01/01/70 00:00 | |
SDCC ver 2.4 P1=06 SDCC ver 2.5 P1=FF | 01/01/70 00:00 | |
Type cast | 01/01/70 00:00 | |
Whats the results if Type Cast?...... | 01/01/70 00:00 | |
SDCC C | 01/01/70 00:00 | |
SDCC C CODE PROBLEM..![]() | 01/01/70 00:00 | |
SDCC C | 01/01/70 00:00 |