Nguyên văn bởi duong_act
Xem bài viết
Thông báo
Collapse
No announcement yet.
Hi-Tech PIC và CCS C
Collapse
X
-
Nguyên văn bởi octo Xem bài viếtước ao 1 lần được thực hiện bản xc pro. cho thỏa lòng cày cục bao đêm tìm thuốc mà ko được. vì giờ đã chuyển sang Mikro rùi
Code:x++; x--; if(x==3) { } for(x=0;x<100;x++) { } while(x==7) { } RB0=y;
Code:18: x++; 07D5 3001 MOVLW 0x1 07D6 00F2 MOVWF 0x72 07D7 0872 MOVF 0x72, W 07D8 07F1 ADDWF x, F 19: x--; 07D9 3001 MOVLW 0x1 07DA 02F1 SUBWF x, F 20: if(x==3) 21: { 22: } 23: for(x=0;x<100;x++) 07DB 01F1 CLRF x 07DC 3064 MOVLW 0x64 07DD 0271 SUBWF x, W 07DE 1803 BTFSC STATUS, 0x0 07DF 2FE8 GOTO 0x7E8 07E0 3001 MOVLW 0x1 07E1 00F2 MOVWF 0x72 07E2 0872 MOVF 0x72, W 07E3 07F1 ADDWF x, F 07E4 3064 MOVLW 0x64 07E5 0271 SUBWF x, W 07E6 1C03 BTFSS STATUS, 0x0 07E7 2FE0 GOTO 0x7E0 24: { 25: } 26: while(x==7) 07E8 0871 MOVF x, W 07E9 3A07 XORLW 0x7 07EA 1903 BTFSC STATUS, 0x2 07EB 2FE8 GOTO 0x7E8 27: { 28: } 29: PORTBbits.RB0=y; 07EC 3000 MOVLW 0x0 07ED 1870 BTFSC y, 0x0 07EE 3001 MOVLW 0x1 07EF 00F2 MOVWF 0x72 07F0 1283 BCF STATUS, 0x5 07F1 1303 BCF STATUS, 0x6 07F2 0806 MOVF PORTB, W 07F3 0672 XORWF 0x72, W 07F4 39FE ANDLW 0xFE 07F5 0672 XORWF 0x72, W 07F6 0086 MOVWF PORTB
Code:.................... x++; 0017: BCF 03.6 0018: INCF 20,F .................... x--; 0019: DECF 20,F .................... if(x==3) 001A: MOVF 20,W 001B: SUBLW 03 001C: BTFSS 03.2 001D: GOTO 01E .................... { .................... } .................... for(x=0;x<100;x++) 001E: CLRF 20 001F: MOVF 20,W 0020: SUBLW 63 0021: BTFSS 03.0 0022: GOTO 025 .................... { 0023: INCF 20,F 0024: GOTO 01F .................... } .................... while(x==7) 0025: MOVF 20,W 0026: SUBLW 07 0027: BTFSC 03.2 .................... { 0028: GOTO 025 .................... } .................... RB0=y; 0029: BTFSS 21.0 002A: BCF 06.0 002B: BTFSC 21.0 002C: BSF 06.0
Attached Files
Comment
-
Thông thường thì có thể nó tối ưu theo 2 hướng giữa tốc độ và độ lợi về ram và code. Với chương trình nhỏ thì cần tốc độ càng nhanh càng tốt, còn % ram, code chẳng có hữu ích gì. Nhưng nếu chương trình lớn mà cần ram, code thì 98% với lại over lại là vấn đề lớn. Việc so sánh tối ưu tố độ rất khó kiểm tra, nhưng dễ kiểm tra tối ưu ram với code. Một compiler build 50% ram/code với một compiler khác build 40% ram/code thì theo mình không thể hiện được cái nào tối ưu hơn. Vì có thể cái 50% kia chạy nhanh hơn. nhưng một cái build 90% với cái không build được (over) thì rõ ràng cái nào tối ưu hơn. Theo mình thì cứ viết code cho đến khi 1 cái over ram/code và cái khác thì build được. Lúc đó mới biết cái nào tối ưu hơn. Hoặc phải đo được tốc độ chạy của 2 code khi đã build
Comment
-
với mcu thì số chu trình , ram cố định viết đến 99% ram, 100% code cũng không hề dễ bị tràn hay treo vì làm gì có điều kiện phát sinh thêm nữa.
Tuy nhiên cẩn thận thì cũng chẳng ai viết đến hết bộ nhớ ! Cảm thấy thiếu rom , ram là phải nâng cấp chip ngay !Module RF chuyên dụng điều khiển, truyền dữ liệu, thiết kế đề tài, dự án điện tử - chuyển giao công nghệ... ĐT: 0904964977 - email: dientuqueduong@yahoo.com
Comment
-
Nguyên văn bởi queduong Xem bài viếtvới mcu thì số chu trình , ram cố định viết đến 99% ram, 100% code cũng không hề dễ bị tràn hay treo vì làm gì có điều kiện phát sinh thêm nữa.
Tuy nhiên cẩn thận thì cũng chẳng ai viết đến hết bộ nhớ ! Cảm thấy thiếu rom , ram là phải nâng cấp chip ngay !
Comment
-
Nguyên văn bởi vuhapassall Xem bài viếtCác trình dịch tốt hay không tốt là ở chỗ này anh Dương ạ, (khi đã tối ưu hết cỡ) Với trình dịch tốt thì không cần nâng cấp chip, với trình dịch không tốt thì phải nâng cấp chip ==> phát sinh chi phíModule RF chuyên dụng điều khiển, truyền dữ liệu, thiết kế đề tài, dự án điện tử - chuyển giao công nghệ... ĐT: 0904964977 - email: dientuqueduong@yahoo.com
Comment
-
Nguyên văn bởi vuhapassall Xem bài viếtThông thường thì có thể nó tối ưu theo 2 hướng giữa tốc độ và độ lợi về ram và code. Với chương trình nhỏ thì cần tốc độ càng nhanh càng tốt, còn % ram, code chẳng có hữu ích gì. Nhưng nếu chương trình lớn mà cần ram, code thì 98% với lại over lại là vấn đề lớn. Việc so sánh tối ưu tố độ rất khó kiểm tra, nhưng dễ kiểm tra tối ưu ram với code. Một compiler build 50% ram/code với một compiler khác build 40% ram/code thì theo mình không thể hiện được cái nào tối ưu hơn. Vì có thể cái 50% kia chạy nhanh hơn. nhưng một cái build 90% với cái không build được (over) thì rõ ràng cái nào tối ưu hơn. Theo mình thì cứ viết code cho đến khi 1 cái over ram/code và cái khác thì build được. Lúc đó mới biết cái nào tối ưu hơn. Hoặc phải đo được tốc độ chạy của 2 code khi đã build
Comment
-
Đúng là 1 lệnh ASM là mất 1 chu kỳ máy. Nhưng số lệnh ASM chưa đã quyết định được tốc độ xử lý nhanh hay chậm...Last edited by quanghuy_125; 23-12-2013, 15:12.ĐT : 01676455880
Comment
-
Chính xác, số lệnh ASM ít hơn không có nghĩa là chạy nhanh hơn. Để hoàn thành 1 việc, không có nghĩa là số lệnh ASM ít thì ít chu kỳ máy hơn. Ví dụ như giải thuật sắp xếp thì biết. Hoặc đệ quy với không đệ quy, dùng vòng lặp và điều kiện vòng lặp, dùng các toán tử bit so với thực hiện phép toán. 1 vòng lặp vài lệnh ASM nhưng chạy cả ngàn chu kỳ máy, nhưng nếu khử vòng lặp đc bằng chục lệnh ASM thì chỉ cần hơn chục vòng máy. Đôi khi , số lệnh ASM nhiều hơn (ứng với code lớn hơn) nhưng chạy nhanh hơn.
Comment
-
Nguyên văn bởi trongbang3 Xem bài viếtcác anh cho em hỏi muốn nạp con PIC16f628A dùng mạch nạp gì vậy có phải pickit ko ? bao nhiêu $ ?
Comment
Bài viết mới nhất
Collapse
-
Trả lời cho Xin hỏi về quạt điệnbởi yname11E thấy cuộn dây thì có 3 đầu dây tương ứng với 2 số, lắp thêm 1 tụ nhỏ vào giữa 2 đầu dây để quạt quay khỏe hơn có đc ko các bác ?
-
Channel: Điện tử gia dụng
hôm nay, 08:26 -
-
Trả lời cho Job Remote online 100% cho aebởi GDSgrpup ae ơi dự án còn tuyển khá nhiều
-
Channel: Tuyển dụng
Hôm qua, 21:57 -
-
bởi GDSgrpBên Tớ đang làm dự án vẫn đang tuyển cực nhiều ctv xử lý hình ảnh Lidar 3D các phương tiện
Làm chăm có thể đến 200-300k/ngày(up to 18tr/tháng) Job remote 100% ko lừa đảo gì có văn phòng ở HỒ TÙNG MẬU HN cho các bạn muốn làm off nhé
Ưu điểm : Cực...-
Channel: Tuyển dụng
Hôm qua, 21:56 -
-
Trả lời cho Xin hỏi về quạt điệnbởi davidcopyBạn thay cánh quạt nhỏ hơn là được....
-
Channel: Điện tử gia dụng
Hôm qua, 21:44 -
-
Trả lời cho Cần tăng tốc bộ đếmbởi davidcopyBạn phải mở nó ra để coi ic đếm của nó đáp ứng tần số bao nhiêu rồi tính....
-
Channel: Điện tử công nghiệp
Hôm qua, 21:30 -
-
Trả lời cho Xin hỏi về quạt điệnbởi nhathung1101Loại này kiểu đoản mạch, chắc phải lắp tụ vào cánh của nó để tăng lực ly tâm...
-
Channel: Điện tử gia dụng
Hôm qua, 16:15 -
-
bởi yname11Em có cái quạt senko B102, tháo ra thì nó ko có tụ điện. E đang muốn mắc thêm tụ điện để cho nó quay khỏe hơn, xin hỏi các bác cách mắc thêm tụ vào như thế nào ạ?
-
Channel: Điện tử gia dụng
23-09-2024, 21:12 -
-
Trả lời cho Tuyển dụng vị trí Automotive Testerbởi nhathung1101Lão lại nhầm. Nghề luật sư ở Mỹ họ gọi một cách cao cả là: Muỗi
Vì Muỗi chỉ thích hút máu người....-
Channel: Tuyển dụng
23-09-2024, 15:42 -
Comment