![]() |
Thuat toan chia
Ai hiểu rỏ thuật toán chia (pic) như 16bit chia cho 8bit 16bit chia cho 16bit giơi thiệu cho tôi với.
|
Code:
#define bf_carry 3, 0 Chúc vui. |
Thế còn những thuật toán khác như +,-,*,/ với 2 số 16 bit thì sao?
Anh có biết xin chỉ giáo dùm nhé! |
Bác mafd_47a đâu rồi, phân tích giúp thuật toán này đi, em cũng đang rất muốn biết
thank bác |
|
thuật toán chi với số bit lớn hơn một từ của VXL em thường dùng phương pháp chia nhị phận thường.Bác cứ hình dung lại phép chia thông thường khi mình học lớp 1 ấy bác sẽ làm được.
sơ sơ như thế này: lần lượt lấy số có trọng số cao nhất chi cho số chia sau đó hạ tiếp số có trọng số cao nhất còn lại xuống kết hợp với số dự để chia cho số chia.Cứ thế cho tới hết.Để em tìm lại code trước đây em viết bằng ASM cho 8051,néu còn em sẽ cho bác để tham khảo hê hê hê !!! |
Có rất nhiều thuật toán chia được phân tích trên www.piclist.com, thuật toán của bạn chỉ là một trong số các thuật toán đó.
Việc phân tích thuật toán và viết các giải thích cho mọi người là điều rất cần thiết vì nó sẽ giúp chúng ta phát triển các thuật toán tối ưu hoá chương trình. Ở đây mình muốn đưa ra luồng này, nhằm phân tích nó, các bạn có thể copy và thảo luận về các thuật toán cơ bản này, chạy thử, và chuẩn hoá lại... Chúc vui. |
Trích:
Anh có thể chỉ cụ thể hơn dc ko? |
Trích:
http://www.piclist.com/techref/micro.../div/index.htm http://www.piclist.com/techref/micro.../mul/index.htm |
Đây là phép chia 8 bit cho 8 bit lấy về tham khảo nhe bạn 16 bit cũng tương tự như vậy thôi:
Code:
#include <p18F4431.inc> |
Trích:
|
.15 là số thập phân thôi bạn ạ
|
cảm ơn bạn mình hiểu rồi.
|
Múi giờ GMT. Hiện tại là 10:14 PM. |
Tên diễn đàn: vBulletin Version 3.8.11
Được sáng lập bởi Đoàn Hiệp.
Copyright © PIC Vietnam