Diễn đàn Clan Yalz
Bạn đã là thành viên xin hãy đăng nhập, còn chưa thì hãy đăng kí nha!
Diễn đàn Clan Yalz
Bạn đã là thành viên xin hãy đăng nhập, còn chưa thì hãy đăng kí nha!
Diễn đàn Clan Yalz
Bạn có muốn phản ứng với tin nhắn này? Vui lòng đăng ký diễn đàn trong một vài cú nhấp chuột hoặc đăng nhập để tiếp tục.
Diễn đàn Clan Yalz


 
Trang ChínhTrang Chính  Latest imagesLatest images  Đăng kýĐăng ký  Đăng NhậpĐăng Nhập  

Share | 

 

 Cách mã hoá Tiếng Việt

Xem chủ đề cũ hơn Xem chủ đề mới hơn Go down 
Cách mã hoá Tiếng Việt EmptyWed Mar 03, 2010 1:47 pm

Yalz÷Kiêu
Thủ lĩnh

Yalz÷Kiêu

Thủ lĩnh

https://clanyalz.forum-viet.com
Số bài gửi Số bài gửi : 244
Ngày tham gia Ngày tham gia : 27/02/2010
Tuổi Tuổi : 30
Đến từ Đến từ : Thiên đường

Bài gửiTiêu đề: Cách mã hoá Tiếng Việt

 
Từ khi máy vi tính trở nên phổ biến và rộng rãi trong nước, nhu cẩ dụng chữ việt trên máy vi tính trở thành nhu cầu cấp thiết đối với người sử dụng. Việc đưa tiếng Việt vào máy vi tính là một vấn dề có tầm quan trọng trong việc tin học hoá, phổ cập tin học và phát triển công nghệ phần mềm trong nước. :65:

Mã hóa tiếng Việt trên Máy tính
Từ khi máy vi tính trở nên phổ biến và rộng rãi trong nước, nhu cẩ dụng chữ việt trên máy vi tính trở thành nhu cầu cấp thiết đối với người sử dụng. Việc đưa tiếng Việt vào máy vi tính là một vấn dề có tầm quan trọng trong việc tin học hoá, phổ cập tin học và phát triển công nghệ phần mềm trong nước. Do vậy đã có rất nhiều cá nhân, tập thể trong và ngoài nước đã tập trung nhiều công sức trong việc đưa tiếng Việt vào các máy tính nói chung và máy vi tính nói riêng.

Các nhóm nhiên cứu đã đưa ra các chương trình bàn phím tiếng Việt như:

Trong nước có: Bked, FreeCode, VietKey, ViED, EDVn, VietStar, VR, TBK, VnSoan, VNị, ViệtWare, TTL, VnKeD, VietBit, BachKhoa, VietWin...

Ngoài nước có:DJ, VNU, VNLabs, VNI,VietSTD...

Cả hai công ty chuyên về tin học lớn nổi tiếng trên thế giới cũng tham gia vào lĩnh vực này đó là: Microsoft trong hệ điều hành Windows 95 tiếng Việt và công ty IBM với hệ máy tính RS/6000 mới có hỗ trợ tiếng Việt.

Với số lượng phần mềm đưa tiếng Việt vào máy tính sơ qua kể trên cũng cho ta thấy được ý nghĩa của việc đưa tiếng Việt vào máy tính.

Tuy nhiên mỗi phần mềm đưa tiếng Việt vào máy tính lại có một cách thức thể hiện khác nhau, cụ thể vấn đề tôi đề cập đến đây là cách mã hoá ký tự tiếng Việt. Do vậy gặp rất nhiều khó khăn trong việc trao đổi thông tin bằng tiến Việt trên máy tính.

Trước vấn đề này, bộ khoa học và công nghệ môi trường đã quy định thống nhất sử dụng chương trình ABC với bộ mã TCVN 5712 trong việc trao đổi văn bản trong các cơ quan nhà nước thông qua hệ thống tin học. Tuy nhiên bộ mã TCVN 5712 chưa thực sự hoàn chỉnh, chưa đáp ứng được tất cả các nhu cầu xử lý thông tin tiếng Việt trên máy tính.

Trong bài viết này tôi đề cập chung đến một số vấn đề mã hóa tiếng Việt để thấy được tính chất của công việc này.

Các bảng mã đã tồn tại:

Đặc điểm tiếng Việt: tiếng Việt là một ngôn thuộc hệ thống chữ cái Latin, Sử dụng nhiều dấu đi kèm với nguyên âm. ngoài bảng chữ cái như của tiếng Anh, tiếng Việt còn có thêm các ký tự:

Sáu nguyên âm a, e, i, o, u, y với năm dấu thanh (sắc, huyền, hỏi, ngã, nặng) tổ hợp thành 30 ký tự.

Sáu nguyên âm ă, â, ê, ô, ơ, ư với sáu dấu thanh (sắc, huyền, hỏi, ngã, nặng, không dấu) tổ hợp thành 36 ký tự.

Một phụ âm đặc biệt: đ

Vậy cần thêm (30+36+1)x2=134 ký tự cho tiếng Việt.

Với bảng mã ASCII 8 bit sử dụng phổ biến trên máy tính, chúng ta có thể mã hóa 256 ký tự. Tuy nhiên các ký tự có mã từ 0 đến 127 đã được chuẩn hóa và thuộc diện "cấm vi phạm" vì vậy chỉ còn 128 chỗ (mã từ 128 đến 255) là được "tự do". Vậy nếu xây dựng mỗi chữ ứng một mã thì sử dụng hết vùng tự do mà vẫn thiếu 134-128=6 chỗ. Sự thiếu chỗ này đã dẫn đến sự phức tạp và khó khăn trong việc xây dựng một bảng chuẩn mã hoá chữ Việt trên máy tính.

Các cách mã hoá tiếng Việt:

Để đưa tiếng Việt vào máy tính, các phần mềm tiếng Việt hiện nay sử dụng một trong hai phương pháp mã hoa: mã dựng sẵn hoặc mã tổ hợp để xây dựng trang mã cho ký tự tiếng Việt.

Mã dựng sẵn: là cách mã hoá mà mọi ký tự tiếng Việt đều có một vị trí xác định. Với mã dựng sẵn cũng được chia làm hai loại:

Mã dựng sẵn với một bảng fonts: với phương pháp này chỉ cần một bảng fonts cho cả chữ thường và chữ hoa.

Các bảng mã: TCVN 5712-VN1, VISCII, BachKhoa I, VietStar... sử dụng phương pháp này.
ưu điểm: mã dựng sẵn với một bảng fonts là một bộ mã đầy đủ nhất đối với tiếng Việt và rất dễ trong việc lập trình.

Nhược điểm: Vì mỗi ký tự chiếm một vị trí trên bảng mã, nên việc mã hoá đã chiếm hết toàn bộ phần mở rộng (từ 128 đến 255) và xâm chiếm sang cả phần các mã chuẩn cho việc điều khiển truyền thông tin hay đồ hoạ, ảnh hưởng nghiêm trọng trong việc truyền thông.

Mã dựng sẵn với hai bảng fonts: Nhằm giải quyết vấn đề vi phạm trong phương pháp mã dụng sẵn với một bảng fonts, phương pháp này dùng hai bảng fonts: Một cho chữ thường và một cho chữ hoa.

Các bảng mã: TCVN 5712-VN3 (ABC), VietSea, VNU, SC 3.0 sử dụng phương pháp này.

ưu điểm: không vi phạm vùng mã chuẩn, tương đối dễ cho lập trình.

Nhược điểm: tồn tại hai bảng mã cho một kiểu chữ. Vi pham luật dư thừa trong mã hóa thông tin. Không hiện thực cho việc phân biệt chữ hoa chữ thường trong các chương trình sử lý dữ liệu. Số lượng Fonts và tên fonts tăng lên gấp đôi ảnh hưởng đến bộ nhớ của máy tính và các thiết bị "Download".

Mã tổ hợp: Là phương pháp mã hoá không theo quan điểm dựng sẵn mà theo quan điểm tổ hợp. Các ký tự Việt có dấu được tổ hợp từ một ký tự nguyên âm và một ký tự thể hiện dấu. Khi sử dụng, hai ký tự này tổ hợp với nhau cho ký tự có dấu.

Ví dụ: Chữ "à" được tổ hợp bởi hai ký tự: Một ký tự là "a" và một dấu là "`"

Các bảng mã VietWare-X, Vni for Windows, TCVN 5712-VN2, BachKhoa II, VS2, 3C25... sử dụng phương pháp này.

Đặc biệt các trang mã 1258 (Microsoft), 1129 (IBM) và ISO cũng sử dụng phương pháp này.

ưu điểm: Đáp ứng được yêu cầu về mã hoá tiếng Việt một cách hoàn chỉnh mà không bị xâm phạm sang vùng đã được chuẩn hoá hay phải xây dựng hai bảng fonts cho một kiểu chữ. Không tốn nhiều chỗ, dễ dàng cho việc mở rộng bảng mã tiếng Việt, dễ dàng tương thích với một số ngôn ngữ khác. Có thể nhúng vào các phần mềm 16 hay 32 bit mà không cần phải chuyển đổi

Nhược điểm: Có nhiều nhược điểm trong việc hiển thị và in ấn các dấu thường bị lệch khỏi vị trí trong khi dàn trang, co dãn chữ, đôi khi độ lệch lớn tạo nên các "rác" khi thể hiên chữ Việt.

Gây phiền hà khi hiệu chỉnh các ký tự có dấu bởi phải xoá hai lần mới hết nguyên âm và dấu, nếu xoá không hết sẽ trở thành rác rất khó sửa.

Đánh giá: Ưu điểm lớn nhất của cách mã hóa này là mã hoá tiếng Việt một cách đầy đủ, không vi phạm đến các quy tắc mã hoá. Xu hướng hiện nay là theo phương pháp mã hoá tổ hợp và đã được chấp nhận ở khá nhiều các nước châu á khác, kể cả trang mã CP1258 (Microsoft), CP1129(IBM) hay ISO 10646 cũng chấp nhận phương pháp mã hoá này.

Một vài bảng mã ví dụ: Có rất nhiều bảng mã tiếng Việt khác nhau được thiết kế, thông qua một số bảng mã để thấy được đặc trưng của chúng:

Bảng mã TCVN 5712-VN1

Bảng mã này sử dụng phương pháp mã dựng sẵn với một bảng fonts vì thế có 12 ký tự đã vi phạm sang vùng mã chuẩn (vùng các ký tự điều khiển).

Các ký tự có dấu trong vùng mở rộng chưa được sắp xếp một cách hợp lý.

Với bảng mã TCVN 5712-VN1 rất khó được áp dụng trên máy tính và thực tế chưa có chương trình nào sử dụng.

Bảng mã TCVN 5712-VN2

Với cơ sở là mã tổ hợp cho ký tự có dấu bảng mã này được tao ra không vi phạm vùng đã được chuẩn hoá.
Tuy nhiên con có nhiều vấn đề bát hợp lý: Không thống nhất các cách mã hó chữ hoa và chữ thường, chưa nhất quán trong phương pháp tổ hợp.

Bảng mã TCVN 5712-VN3

Bảng mã TCVN 5712-VN3 được mã hoá theo phương pháp mã dựng sẵn với hai bảng fonts, khá đơn giản trong việc sử dụng và giải quyết vấn đề tiếng Việt song với yêu cầu phát triển công nghệ thông tin thì không phù hợp bởi nó mang đặc điểm chung của bảng mã dựng sẵn với hai bảng fonts.

Hiện tại bảng mã TCVN 5712-VN3 đang được sử dụng như chuẩn trao đổi văn bản giữa các cơ quan thuộc chính phủ.

Bảng mã VietWare-X

Được xây dựng dựa trên mã tổ hợp, bảng mã này được sử dụng rộng rãi trong việc nhập dữ liệu trong các hệ xử lý văn bản. Có thể sử dụng bảng mã này từ chương trình VietWare 2.0 hay VNI for Windows.

Nguyên âm và phụ âm mở rộng đã được tính toán sắp xếp phù hợp thuận tiện cho việc xử lý dữ liệu.

Tuy nhiên bảng mã này chưa thực sự hoàn hảo bởi vi phạm luật không dư thừa trong mã hóa: ví dụ: với các chữ Y, A, O, y, a, o có tới 6 dấu nặng khác nhau... bởi thế bảng mã này cũng không thể là bảng mã tiêu chuẩn để trao đổi thông tin.

Trang mã CP1258 (Microsoft) và CP1129 (IBM)

Trước khả năng khát triển của công nghệ thông tin và nhu cầu tiếng Việt trong máy tính cá nhân, Microsoft đã đưa ra trang mã 1258

Trang mã 1258 được xây dựng chủ yếu dựa trên bộ mã chuẩn Quốc tế ISO 8859-1 (Latin1) và duy trì sự tương hợp với các ngôn ngữ châu Ấu chủ yếu (Anh, Pháp, Đức, Tây Ban Nha, Thuỵ điển...).

Đây là bộ mã dùng phương pháp tổ hợp để đánh dấu vì vậy thoả mãn việc giới hạn sử dụng bảng mã.

Sau khi Microsoft phát triển tiếng hệ điều hành Windows 95 tiếng Việt với trang mã 1258, IBM cũng đưa ra hệ máy RS/6000 có hỗ trợ tiếng Việt với trang mã 1129 trên hệ điều hành UNIX.

Về cơ bản, cả hai trang mã hoàn toàn tương thích với nhau và hoàn toàn giống nhau trong mã hoá tiêng Việt , chỉ khác nhau 3 vị trí: Trang mã 1129 giữ lại 3 ký tự tiếng Pháp còn trên 1258 thì đã thay đổi.

Cả hai trang mã cùng xây dựng trên phuong pháp mã hóa tổ hợp cho các ký tự có dấu, tuy nhiên có một số mã tiếng Việt có dấu đã được dựng sẵn, điều nà được giải thích là để phù hợp với bảng mã dụng sẵn của một số nước châu Ấu.
Các ký tự được mã hoá một cách rất khoa học, Mã của ký tự thường lớn hơn mã của ký tự hoa tương ứng là 32 đơn vị, điều này tạo thuận lợi cho cho các thao tác sử lý dữ liệu (sắp xếp hay chuyển đổi qua lại giữa chữ hoa và chữ thường). Cả hai trang mã đều đưa vào đơn vị tiền tệ Việt Nsm theo chuẩn ISO 10646 ở trí mã 254 là đ.

Tuy rằng cả hai trang mã này là của riêng Microsoft và IBM, chúng chưa được sử dụng như chuẩn của Việt Nam hay của thế giới song chúng có khả năng đáp ứng được hầu hết các yêu cầu trong công việc đưa tiếng Việt vào máy tính nói chung.

Trang mã ISO 10646

Xu hướng thế giới là theo mã tổ hợp trong phạm vi 8 và 16 bit như ISO 10646, các chữ latin có dấu đề theo nguyên tắc tổ hợp. Tuy nhiên ISO 10646 cũng vi phạm nguyên tắc không dư thừa trong mã hoá: Nó đã có một số mã tiếng Việt mang dấu dựng sẵn đồng thời cũng có các mã tổ hợp thể hiện chúng.

Trong cuộc họp tháng 7/1997 tại HyLạp, có nhiều ý kiến xung quanh vấn đề này, nhiều nước có ý kiến về việc sửa đổi ISO 10646 để đưa ra phiên bản mới hoàn thiện hơn.

Đánh giá chung:

Thông qua tìm hiểu cơ bản về mã hoá tiếng Việt ta thấy nhu cầu cấp thiết của việc đưa tiếng Việt vào máy tính, thấy được quang cảnh của các cách mã hoá tiếng Việt giữa các phần mềm tiếng Việt. Trong sự phát triển công nghệ thông tin đòi hỏi phải có sự thống nhất cao về chuẩn mã tiếng Việt để có thể làm nền tảng cho việc phát triển công nghệ phần mềm cũng như phổ cập thông tin.

Để giải quyết vấn đề này chúng ta cần phải có một chuẩn mã tiếng Việt. Hiện tại ta vẫn sử dụng TCVN 5712-VN3 là bộ mã chính thức song bộ mã này thực sự chưa đáp ứng được yêu cầu tiếng Việt chuẩn trong máy tính.

Sử dụng phương pháp tổ hợp để mã hoá tiếng Việt trên máy tính dường như là điều tất yếu trong tương lai.

Trang mã 1258 (Microsoft) và 1129 (IBM) về cơ bản đáp ứng được nhu cầu tiếng Việt trên máy tính bởi tính khoa học của chúng, đồng thời chúng cũng tương thích với một số ngôn ngữ châu Ấu. Mặt khác chúng được thiết kế và hỗ trợ bởi hai hãng nổi tiếng về lĩnh vực tin học, thông tin. Vì thế đây thực sự là vấn đề mà ta cần xem xét.

 

Cách mã hoá Tiếng Việt

Xem chủ đề cũ hơn Xem chủ đề mới hơn Về Đầu Trang 
Trang 1 trong tổng số 1 trang

Permissions in this forum:Bạn không có quyền trả lời bài viết
Diễn đàn Clan Yalz :: Phần mềm :: Thủ Thuật-

Powered by phpBB® Version 2.0. Forumotion..

 
Free forum | ©phpBB | Free forum support | Báo cáo lạm dụng | Thảo luận mới nhất