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
-
bởi bpsvietnamNguyên lý hoạt động ngưng tụ lạnh của máy hút ẩm
Không khí ẩm sẽ được hút vào trong máy thông qua cửa hút gió, không khí vào trong tiếp tục đi qua giàn lạnh. Tại hệ thống làm lạnh, không khí ẩm sẽ ngưng tụ tạo thành nước. Nước...-
Channel: Điện tử dành cho người mới bắt đầu
hôm nay, 15:18 -
-
Trả lời cho Xin hỏi về màn hình laptopbởi yname11vg, cám ơn bác...........
-
Channel: Thiết bị điện tử cá nhân
hôm nay, 14:37 -
-
bởi khoine9899
Em chào các anh và mọi người.
Hiện em đang có 1 con bơm màng trong thiết bị y tế đang gặp tình trạng yếu dần hoặc ngừng hoạt động sau thời gian sử dụng
Sau khi tìm hiểu về thông tin của bơm trên mạng thì em được biết...-
Channel: Điện tử dành cho người mới bắt đầu
hôm nay, 11:22 -
-
Trả lời cho Cần mọi người giúp mạch tạo sóng siêu âm máy rửabởi bqviet
-
Channel: Điện tử công suất
Hôm qua, 20:26 -
-
bởi Minhdai95Em chào mọi người, e đang sửa mạch tạo sóng siêu âm cho máy rửa mà chưa có tài liệu để tham khảo sửa, mọi người cho e xin tài liệu ạ...
-
Channel: Điện tử công suất
Hôm qua, 11:37 -
-
bởi pia2k1Cùng câu hỏi và cần được giải đáp thêm ạ...
-
Channel: Hướng dẫn sử dụng diễn đàn
Hôm qua, 11:28 -
-
Trả lời cho Công thức điện tửbởi mèomướpDạ thời thế giờ thay đổi theo hướng tích cực hơn rồi chú trung sĩ ạ. Kiến thức được chia sẻ ngày càng nhìu nên làm ăn gian dối ko còn dễ dàng như trước đâu ạ. Những thợ nhỏ rồi sẽ thành công nhân sản xuất đồ mới hết thay vì sửa chữa lặt vặt...
-
Channel: Tâm tình dân kỹ thuật
26-11-2024, 21:21 -
-
Trả lời cho Xin hỏi về màn hình laptopbởi mèomướpDạ cùng chuẩn tín hiệu thì chắc chắn là nhận ạ. Vì bản chất oled hay lcd thì đều phải có mạch chuyển đổi trên thanh gỗ rồi chuyển sang những chip xử lý hàng nghìn chân gắn trên những tab mỏng dính rồi mới ra các điểm ảnh theo hàng...
-
Channel: Thiết bị điện tử cá nhân
26-11-2024, 20:31 -
-
Trả lời cho Xin hỏi về màn hình laptopbởi yname11Ok , thanks bác đã chỉ...
-
Channel: Thiết bị điện tử cá nhân
26-11-2024, 15:06 -
-
bởi nguyendinhvanSau bao năm nghiên cứu cái dtvn. Tôi phát hiện công thức này. Các anh em xem đúng bao nhiêu phần trăm nhé !
Chập thì thay. Cháy thì tháo
Làm thì láo. Báo thì hay
May thì khoe. Rủi thì bỏ
Thành tích nhỏ. Báo thành to
Làm cho có. Báo chi li
Sai cả li. Báo...-
Channel: Tâm tình dân kỹ thuật
26-11-2024, 00:35 -
Comment