Môi trường lập trình trên Symbian cung cấp các kiểu dữ liệu cơ bản tương đương với các kiểu xây dựng sẵn của C++. Đó là các lớp dữ liệu cơ bản mà khi sử dụng không cần cấp phát hay hủy 1 cách tường minh; các lớp này bắt đầu bằng ký tự T. Lưu ý, khi lập trình trên Symbian không nên dùng các kiểu dữ liệu xây dựng sẵn của C++ mà hãy dùng các (lớp) kiểu cơ bản mà Symbian cung cấp. Lý do đơn giản vì thiết bị thực (chạy hệđiều hành Symbian) có thể không làm việc tốt với các kiểu dữ liệu xây dựng sẵn của C++. B.2.1 Kiểu số nguyên: Kiểu dữ liệu có dấu Kiểu dữ liệu không dấu
Kiểu dữ liệu C++ tương đương Mô tả
TInt8 TUint8 signed char & unsigned char
Số nguyên 8 bit có dấu và không dấu
TInt16 TUint16 short int & unsigned short int Số nguyên 16 bit có dấu và không dấu
TInt32 TUint32 long int & unsigned long int Số nguyên 32 bit có dấu và không dấu
TInt64 Số nguyên 64 bit
TInt TUint int & unsigned int Số nguyên ít nhất 32 bit có dấu và không dấu
Bảng B. 4 Kiểu số nguyên B.2.2 Kiểu số thực:
Kiểu dữ liệu Kiểu dữ liệu C++
tương đương Mô tả
TReal32 float Số thực 32 bit TReal64 double Số thực 64 bit TReal Tương đương với TReal64
Bảng B. 5 Kiểu số thực
Lưu ý: Hều hết các HĐH Symbian hiện nay không hỗ trợ phần cứng xử lý số chấm động. Vì vậy các phép toán trên số thực sẽ chậm hơn rất nhiều lần so với số nguyên. Vì vậy bạn nên hạn chế tối đa việc sử dụng số thực.
B.2.3 Các kiểu cơ bản khác: Kiểu dữ liệu Kiểu dữ liệu C++
tương đương Mô tả
TChar 32-bit unsigned integer Kiểu ký tự của Symbian, dài 32 bit, cung cấp nhiều hàm xử lý trên ký tự TText8 char Kiểu ký tự 1 byte
TText16 wchar_t Kiểu ký tự Unicode (2 bytes) TText Tương đương với TText16
TBool int Kiểu logic, nhận 2 giá trị ETrue/ EFalse TAny void
Bảng B. 6 Các kiểu cơ bản khác
Lưu ý:
[1]Kiểu TText16 có cùng kích thước với TUint, ởđây chỉ có ý nghĩa giúp chương trình tường minh hơn (TText16 chứa ký tự, TUint chứa số nguyên không dấu)
[2]Lớp TChar là lớp ký tựđặc biệt của Symbian, biểu diển được các ký tự Unicode trong khoảng 0x10000 to 0xFFFFF (trong khi TText16 chỉ biểu diễn ký tự 16 bit). Đồng thời lớp TChar cũng cung cấp 1 loạt các hàm xử lý ký tự (viết thường, viết hoa, phân loại kiểu Unicode...)
Phụ lục C Chuẩn nén Dictzip#
Chuẩn nén Dictzip# được chúng em đề nghị để giải quyết nén dữ liệu và truy xuất ngẫu nhiên trên tập tin nén cho riêng ứng dụng của mình.
Cách thức nén
Tùy chọn bộ thư viện nén và giải nén. Trong chương trình ứng dụng của mình, chúng em sử dụng bộ thư viện mã nguồn mở zlib version 1.1.4.
Cấu trúc lưu trữ
Định dạng của tập tin nén theo chuẩn Dictzip#
Các qui ước chung:
o Ký hiệu cho 1 byte:
o Ký hiệu cho một số lượng byte có thể thay đổi :
Định dạng tập tin: một tập tin Dictzip# gồm một chuỗi các thành phần (các tập dữ liệu nén). Định dạng của từng phần sẽ được trình bày trong phần dưới đây. Các thành phần chỉ đơn giản sắp xếp liên tiếp nhau trong tập tin, mà không có các thông tin thêm gì ở phía trước, giữa, hay sau chúng.
Định dạng các thành phần:
o Thành phần dữ liệu:
Ý nghĩa các thành phần:
o L: là chiều dài tối đa của khối dữ liệu sau khi giải nén không vượt quá 64 KB.
o XLEN: là chiều dài của khối dữ liệu liền sau đó.
o uncompr length words: cho biết kích thước từng khối dữ liệu (2 byte) sau khi giải nén.
Phụ lục D Các bộ dữ liệu của từ điển Dữ liệu nghĩa từđiển
Từ điển Số từ Kích thước Nguồn dữ liệu
Vietnamese - English 91146 1.9 MB [1] Vietnamese - France 39071 1.7 MB [2] Vietnamese - German 11922 0.4 MB [2] Vietnamese - Vietnamese 30158 2.0 MB [2] English - English 121962 8.1 MB [3] English - Vietnamese 68998 4.3 MB [1] English - German 93279 1.4 MB [3] English - France 8799 0.2 MB [3] English - Spanish 5907 0.1 MB [3] English - Netherlandish 7714 0.2 MB [3] English - Italian 4519 < 0.1 MB [3] English - Russian 3385 < 0.1 MB [3] English - Afrikaans 6397 < 0.1 MB [3] German - Vietnamese 45070 4.7 MB [2] German - English 81674 1.3 MB [3] German - Netherlandish 12812 0.3 MB [3] German - Portuguese 8742 0.2 MB [3] German - France 8168 0.1 MB [3] German - Italian 4454 < 0.1 MB [3] France - Vietnamese 47951 2.9 MB [2] France - English 7831 0.2 MB [3] France - Netherlandish 9604 0.2 MB [3] France - German 6114 0.2 MB [3] Portuguese - English 10398 0.2 MB [3] Spanish - English 4502 0.1 MB [3] Afrikaans - English 5129 < 0.1 MB [3] Swedish - English 5220 < 0.1 MB [3] Danish - English 3997 < 0.1 MB [3] Turkish - English 1026 < 0.1 MB [3] Czech - English 489 < 0.1 MB [3] Afrikaans - German 3800 < 0.1 MB [3] Computing 13798 2.2 MB [3]
Với nguồn dữ liệu nghĩa từđiển được lấy từ : [1]English Study 4.0
[2]http://www.informatik.uni-leipzig.de/~duc [3]http://freedict.de
Dữ liệu âm thanh
Âm thanh tiếng Việt: Đồ án “Đọc văn bản tiếng Việt” của môn học “Xử lý ngôn ngữ tự nhiên” do T.S Đinh Điền hướng dẫn.
Âm thanh tiếng Anh: Được phát sinh từ các từng tiếng Anh thông dụng trên trang web http://www.dictionaryresource.com
Tài liệu tham khảo Tài liệu viết
[1]Martin Tasker, Jonathan Allin, Jonathan Dixon, John Forrest, Mark Heath, Tim Richardson, Mark Shackman, Professional Symbian Programming,
Wrox Press Ltd., 2000
[2] T.S. Dương Anh Đức, Th.S. Trần Hạnh Nhi, “Nhập môn Cấu trúc dữ liệu và thuật toán”
[3] Trương Hải Bằng, “Giáo trình Cấu trúc dữ liệu 2”, 2001
[4] Tino Pyssysalo, Terje Bergstrom, Jurgen Bocklage, Pawel Defee, Patrik Granholm, Juuso Huttunen, Ville Karkkainen, Matti Kilponen, Matti Kilponen, Tomi Koskinen, Mika Matela, Ilkka Otsala, Antti Partanen, Timo Puronen, Jere Seppal, Juha Siivola, Saiki Tanabe, Jukka Tarhonen, Tommi Terasvirta, Tuukka Turunen, Tommi Valimaki , “Programming for the Series 60 Platform and Symbian OS”, John Wiley & Sons Ltd, 2003
[5]Nguyễn Thiện Chương, Phạm Tuấn Sơn, “Xây dựng ứng dụng từ điển trên Pocket PC”, Luận văn cử nhân tin học, Đại học Khoa học Tự nhiên Tp.Hồ Chí Minh, 2004
[6]Đặng Minh Thắng, Chu Nguyên Tú, “Xây dựng hệ thống máy tính điều khiển từ xa sử dụng công nghệ Bluetooth”, Luận văn cử nhân tin học, Đại học Khoa học Tự nhiên Tp.Hồ Chí Minh, 2004
[7]Phạm Khắc Hưng, Võ Hồng Duyên, “Tìm hiểu và nghiên cứu kỹ thuật phát triển ứng dụng trên môi trường Symbian OS”, Luận văn cử nhân tin học, Đại học Khoa học Tự nhiên Tp.Hồ Chí Minh, 2004
[8]Huỳnh Tấn Kiệt, Trần Thị Thùy Trang, “Nghiên cứu hệ điều hành Symbian 6.0 và Xây dựng ứng dụng minh họa trên điện thoại di động Nokia 9210”, Luận văn cử nhân tin học, Đại học Khoa học Tự nhiên Tp.Hồ Chí Minh, 2004
[9]T.S Đinh Điền, “Giáo trình xử lý ngôn ngữ tự nhiên”, 2004 [10] Series 60 SDK Help – Nokia Series 60
Website [1]http://www.allaboutsymbian.com [2]http://www.forum.nokia.com [3]http://www.newlc.com [4]http://www.symbian.com [5]http://www.informatik.uni-leipzig.de/~duc [6]http://freedict.de [7]http://www.dictionaryresource.com [8] http://www.wlug.org.nz
[9] http://www.die.net (Dictzip – Linux Man Page)
Dữ liệu từđiển
[1]English Study 4.0
[2]http://www.informatik.uni-leipzig.de/~duc [3] http://freedict.de