intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Đồ họa máy tính - Chương 1 Màn hình của máy tính - Bài 1

Chia sẻ: Nguyễn Nhi | Ngày: | Loại File: PDF | Số trang:8

159
lượt xem
20
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Bài Mở đầu I. Đối t-ợng nghiên cứu và ứng dụng của kỹ thuật đồ hoạ 1. Đối t-ợng nghiên cứu của kỹ thuật đồ hoạ Từ khi máy tính ra đời các ứng dụng phi số ngày càng rộng rãi, một trong các ứng dụng là xử lý thông tin bằng hình ảnh. Trong lĩnh vực xử lý thông tin hình ảnh lại đ-ợc chia thành 2 lĩnh vực:

Chủ đề:
Lưu

Nội dung Text: Đồ họa máy tính - Chương 1 Màn hình của máy tính - Bài 1

  1. Ch−¬ng 1 Mμn h×nh cña m¸y tÝnh $1. Bμi Më ®Çu I. §èi t−îng nghiªn cøu vµ øng dông cña kü thuËt ®å ho¹ 1. §èi t−îng nghiªn cøu cña kü thuËt ®å ho¹ Tõ khi m¸y tÝnh ra ®êi c¸c øng dông phi sè ngµy cµng réng r·i, mét trong c¸c øng dông lµ xö lý th«ng tin b»ng h×nh ¶nh. Trong lÜnh vùc xö lý th«ng tin h×nh ¶nh l¹i ®−îc chia thµnh 2 lÜnh vùc: - Kü thuËt ®å ho¹ - Xö lý ¶nh Trong khi xö lý ¶nh quan t©m ®Õn c¸ch thu nhËn, kh«i phôc l−u tr÷ c¸c h×nh ¶nh (c¸c h×nh ¶nh nµy cã thÓ cã tõ bÊt kú nguån nµo nh− video, camera....) th× kü thuËt ®å ho¹ tËp trung vµo vÊn ®Ò sö dông m¸y tÝnh ®Ó t¹o ra h×nh ¶nh. Râ rµng kü thuËt ®å ho¹ vµ xö lý ¶nh ®Òu xö lý th«ng tin h×nh ¶nh cho nªn nã cã quan hÖ rÊt mËt thiÕt víi nhau nh−ng môc ®Ých nghiªn cøu cña chóng rÊt kh¸c nhau 2. øng dông cña kü thuËt ®å ho¹ Kü thuËt ®å ho¹ cã øng dông rÊt réng r·i tõ khi tèc ®é m¸y tÝnh t¨ng, kh¶ n¨ng hiÓn thÞ cña mµn h×nh tèt, kh¶ n¨ng l−u tr÷ th«ng tin t¨ng. Kü thuËt ®å ho¹ ®−îc sö dông trong 2 lÜnh vùc chÝnh: - VÏ kü thuËt - M« pháng II. Mµn h×nh m¸y vi tÝnh 1. C¸c chÕ ®é lµm viÖc Mµn h×nh lµ n¬i thÓ hiÖn c¸c th«ng tin, nã ph¶n ¶nh c¸c kÕt qu¶ tÝnh to¸n, xö lý. Th«ng tin hiÓn thÞ cã thÓ ë d¹ng v¨n b¶n, cã thÓ ë d¹ng h×nh ¶nh, t−¬ng øng víi c¸c d¹ng th«ng tin cÇn hiÓn thÞ mµn h×nh cã 2 chÕ ®é lµm viÖc: ChÕ ®é v¨n b¶n (Text mode) ChÕ ®é ®å ho¹ (Graphics mode) ë chÕ ®é v¨n b¶n mµn h×nh ®−îc chia thµnh 80 cét, 25 dßng, mçi « lµ giao cña c¸c dßng c¸c cét t¹o thµnh hép ký tù (text box) ë chÕ ®é ®å ho¹ mµn h×nh ®−îc chia thµnh sè dßng, sè cét lín h¬n tuú thuéc vµo chÊt l−îng cña mµn h×nh, sè cét x sè dßng y gäi lµ ®é ph©n gi¶i cña mµn h×nh, ng−êi ta dùa vµo ph©n gi¶i vµ sè mµu mµ mµn h×nh cã thÓ hiÓn thÞ ®Ó ph©n chia mµn h×nh thµnh c¸c lo¹i kh¸c nhau nh− - MDA (Monochrome Display Adapter) 1
  2. Kü thuËt §å ho¹ m¸y tÝnh - CGA (Color Graphics Adapter) - EGA (Enhance Graphics Adapter) - VGA (Video Graphics Array) - SVGA (Supper Video Graphics Array) Mçi mµn h×nh cã thÓ ho¹t ®éng ë mét chÕ ®é nµo ®ã tuú thuéc vµo chÊt l−îng cña mµn h×nh - hiÖn nay c¸c mµn h×nh cña hä PC cã c¸c chÕ ®é sau tÝnh theo hÖ c¬ sè 16. Riªng Mode tõ 13 trë ®i chØ dïng cho VGA trë lªn D−íi ®©y lµ b¶ng c¸c mode cña mµn h×nh Mode (Hexa) ChÕ ®é §é ph©n gi¶i Sè l−îng mµu 0 text 40x25 16 1 text 40x25 16 2 text 80x25 16 3 text 80x25 16 4 graph 320x200 4 5 graph 320x200 4 6 graph 320x200 2 7 text 80x25 16 D graph 320x200 16 E graph 640x200 16 F graph 640x350 16 10 graph 640x350 16 11 graph 640x480 2 12 graph 640x480 16 13 graph 320x200 256 100 graph 640x400 256 101 graph 640x480 256 102 graph 800x600 16 103 graph 800x600 256 104 graph 1024x768 16 105 graph 1024x768 256 D−íi ®©y ®Ó phôc vô cho môc ®Ých ®å ho¹ chóng ta chØ kh¶o s¸t c¸c chÕ ®é ®å ho¹ 16 vµ 256 mµu. §Ó thiÕt lËp chÕ ®é ®å ho¹ ta dïng thñ tôc sau ®©y Procedure set_mode(mode: integer); Var 2
  3. Kü thuËt §å ho¹ m¸y tÝnh R : registers; Begin R.ax:=$4f02; R.bx:=mode; intr($10,R); End; Cßn ®Ó ®äc Mode mµn h×nh ta dïng hµm sau ®©y Function Get_mode: integer; Var R : registers; Begin R.ax:=$4f03; intr($10,R); Get_mode:=R.bx; End; VÝ dô : §Æt chÕ ®é mµn h×nh Program Set_Get_Mode; Uses crt,Graph,dos; Var R : registers; mode,gd,gm : Integer; Procedure set_mode(mode: integer); Begin R.ax:=$4f02; R.bx:=mode; intr($10,R); End; Function Get_mode: integer; Begin R.ax:=$4f03; intr($10,R); Get_mode:=R.bx; End; Begin mode:= Get_mode; gd:=0; Set_mode(mode); directvideo:=false; Writeln('mode la : ',Get_mode); InitGraph(gd,gm,' '); directvideo:=false; Writeln('mode la : ',Get_mode); Readkey; Set_mode(mode); End. 3
  4. Kü thuËt §å ho¹ m¸y tÝnh 2. HÖ to¹ ®é hiÓn thÞ trªn mµn h×nh Khi thùc hiÖn c¸c chÕ ®é ®å ho¹ ng−êi ta quy −íc g¾n trªn mµn h×nh hÖ to¹ ®é Decac theo quy −íc sau: Trôc X gäi lµ täa ®é cét, Y gäi lµ to¹ ®é hµng ¤ cã to¹ ®é X,Y lµ ®¬n vÞ ®å ho¹ nhá nhÊt gäi lµ pixel - mét pixel trªn mµn h×nh lµ h×nh ¶nh cña mét ®iÓm trong hÖ to¹ ®é thùc. Khã kh¨n c¬ b¶n trong kü thuËt ®å ho¹ vi tÝnh lµ ng−êi ta ph¶i sö dông c¸c pixel cã to¹ ®é nguyªn ®Ó biÓu diÔn tÊt c¶ c¸c ®iÓm trong hÖ to¹ ®é thùc Sè pixel cã ®−îc trªn mµn h×nh phô thuéc vµo ®é ph©n gi¶i cña mµn h×nh VÝ dô: CGA: 320x200 EGA: 640x350 VGA: 640x480 4
  5. Kü thuËt §å ho¹ m¸y tÝnh 3. Nguyªn t¾c t¹o mµu cña mµn h×nh: §Ó thÓ hiÖn mµu cña mçi pixel trªn mµn h×nh ng−êi ta sö dông 3 mµu c¬ b¶n: Red, Green, Blue. Lo¹i mµn h×nh t¹o mµu theo 3 mµu c¬ b¶n trªn gäi lµ lo¹i mµn h×nh RGB. Tõ 3 mµu c¬ b¶n nµy ng−êi ta t¹o ra c¸c mµu kh¸c b»ng c¸ch thay ®æi c−êng ®é s¸ng (Intensity) cña c¸c mµu c¬ b¶n trªn Ch¼ng h¹n ®Ó cã 16 mµu tõ 3 mµu c¬ b¶n trªn ng−êi ta sö dông 4 bit, 3 bit øng víi 3 mµu c¬ b¶n, mét bit dïng ®Ó thay ®æi c−êng ®é s¸ng theo b¶ng sau: Color Itensity Red bit Green Blue bit IRGB bit bit Value Black 0 0 0 0 0000 Blue 0 0 0 1 0001 Green 0 0 1 0 0010 Cyan 0 0 1 1 0011 Red 0 1 0 0 0100 Magenta 0 1 0 1 0101 Brown 0 1 1 0 0110 White 0 1 1 1 0111 Gray 1 0 0 0 1000 Bright Blue 1 0 0 1 1001 Bright green 1 0 1 0 1010 Bright Cyan 1 0 1 1 1011 Bright Red 1 1 0 0 1100 Bright magenta 1 1 0 1 1101 Yellow 1 1 1 0 1110 Bright White 1 1 1 1 1111 §Ó t¹o ra 256 mµu trªn mµn h×nh VGA cã 3 nhãm bit kÝch ho¹t, mçi nhãm gåm 6 bit ®Ó thay ®æi c−êng ®é s¸ng cña 3 mµu c¬ b¶n, c¸c nhãm bit nµy ®−îc t¹o thµnh 3 byte riªng biÖt VÝ dô: 5
  6. Kü thuËt §å ho¹ m¸y tÝnh Blue Green Red Value 00 00 00 00 Black 3F 3F 3F $3F3F3F Bright While Râ rµng víi c¸ch tæ hîp nµy víi mµn h×nh VGA cã thÓ t¹o ®−îc 64 x 64 x 64 =262.144 mµu kh¸c nhau, mµn h×nh VGA cho phÐp hiÓn thÞ cïng mét lóc 256 mµu trong sè 262.144 mµu cã thÓ Sè mµu cã thÓ hiÓn thÞ cña mét pixel phô thuéc vµo sè bit dïng ®Ó biÓu diÔn nã Bit/pixel Sè mμu 1 2 2 4 4 16 8 264 4. Bé nhí mµn h×nh (Display memory) Bé nhí mµn h×nh lµ vïng bé nhí dïng ®Ó chøa d÷ liÖu trùc tiÕp hiÖn ra mµn h×nh, d÷ liÖu trong bé nhí mµn h×nh thay ®æi sÏ trùc tiÕp thay ®æi trªn mµn h×nh ë chÕ ®é v¨n b¶n (text mode) bé nhí chñ dµnh cho bé nhí mµn h×nh ®−îc b¾t ®Çu tõ ®Þa chØ B800:0000 ë chÕ ®é ®å ho¹ (graphics mode) bé nhí chñ dµnh cho bé nhí mµn h×nh ®−îc b¾t ®Çu tõ ®Þa chØ A000:0000 Víi mµn h×nh VGA kÝch th−íc chuÈn cña bé nhí mµn h×nh lµ 256Kb Bé nhí mµn h×nh cã 2 c¸ch tæ chøc Tæ chøc d¹ng gãi (packed format) Tæ chøc d¹ng m¶ng (bit plane) 6
  7. Kü thuËt §å ho¹ m¸y tÝnh Trong c¸ch tæ chøc d¹ng gãi c¶ bé nhí mµn h×nh lµ mét m¶ng mét chiÒu, mäi phÇn tõ cña m¶ng lµ 1 byte Trong c¸ch tæ chøc bit plane bé nhí cña mµn h×nh ®−îc tæ chøc logic thµnh c¸c m¶ng hai chiÒu. Trong c¸c chÕ ®é ®å ho¹ 16 mµu bé nhí mµn h×nh ®−îc tæ chøc thµnh 4 m¶ng gäi lµ 4 bit plane ®¸nh sè tõ 0 ®Õn 3 TÊt c¶ c¸c bit plane ®Òu ®−îc truy nhËp tõ cïng mét ®Þa chØ A000 Ng−êi lËp tr×nh cã thÓ truy nhËp vµo c¸c bit plane b»ng c¸c lÖnh th«ng qua cæng hoÆc b»ng c¸c ng¾t cña Rom Bios ChØ cã thÓ ®äc/ghi mét byte trªn cïng mét bit plane. Mét byte trªn mét bit plane chøa th«ng tin cña 8 pixel l©n cËn theo hµng ngang Muèn ®äc th«ng tin cña mét pixel nµo ®ã ta ph¶i ®äc 4 byte vµ t¸ch 4 bit plane tõ 4 byte nµy. Cßn muèn ghi mét pixel ta ph¶i ghi 4 byte vµ do ®ã còng cã nghÜa lµ ph¶i ghi 8 pixel. 5. Trang mµn h×nh (Display page) Trang mµn h×nh lµ vïng bé nhí mµn h×nh øng víi l−îng th«ng tin hiÓn thÞ trªn mét mµn h×nh. V× vïng bé nhí mµn h×nh chuÈn ®¹t tíi 256Kb trong khi l−îng th«ng tin ®Ó hiÓn thÞ trªn mét mµn h×nh l¹i nhá h¬n, ®Ó t¹o ra tèc ®é hiÓn thÞ nhanh, bé nhí mµn h×nh cho phÐp tæ chøc thµnh tõng trang mµn h×nh, c¸c trang ®−îc ®¸nh sè tõ 0 trë ®i. Trang ®−îc hiÓn thÞ trªn mµn h×nh gäi lµ trang ®ang lµm viÖc (active page). Tuú thuéc vµo chÕ ®é lµm viÖc cña mµn h×nh mµ bé nhí mµn h×nh cã sè trang kh¸c nhau. D−íi ®©y lµ sè trang ë mét sè mode cña EGA/VGA Mode ®é ph©n gi¶i sè trang sè mμu kÝch th−íc ký tù D 320*200 8 16 8*8 E 640*200 4 16 8*8 10 640*350 2 16 8*14 7
  8. Kü thuËt §å ho¹ m¸y tÝnh 12 640*480 1 16 8*16 - Chóng ta cã thÓ tù h¹n chÕ vÒ sè trang cho mçi chÕ ®é cña mµn h×nh. VÝ dô: - Mode E cã tÊt c¶ 128000 pixel/page. V× 8 pixel øng víi mét byte trªn mét bit plane do ®ã cÇn 16000 byte/bit plane/ page - mét trang cÇn 64000 byte xÊp xØ 64 kb. Do vËy tèi ®a chØ cã thÓ hiÓn thÞ ®−îc 4 trang. - Mode D: cã 64000 pixel/ page. V× pixel øng víi mét byte trªn mét bit plane do ®ã cÇn 8000 byte/ bit plane/ page - mét trang cÇn 32000 byte xÊp xØ 32kb/page do ®ã tèi ®a chØ cã thÓ cã 8 trang. - Ng−êi ta còng cã thÓ biÕt ®−îc ®Þa chØ ®Çu cña mçi trang trong tõng chÕ ®é lµm viÖc cña mµn h×nh. Mode D: A000 - A1F3F A200 - A3F3F A400 - A5F3F A600 - A7F3F A800 - A9F3F AA00 - ABF3F AC00 - ADF3F AE00 - AFF3F Mode E: A000 - A3E7F A400 - A7E7F A800 - ABE7E AC00 - AFE7E $2. Truy cËp vμo bé nhí mμn h×nh VÒ nguyªn t¾c cã 2 c¸ch ®Ó truy cËp bé nhí mµn h×nh vµ c¸c thanh ghi + C¸ch 1: Sö dông c¸c dÞch vô ng¾t cña ROM BIOS, ROM BIOS cung cÊp t−¬ng ®èi ®Çy ®ñ c¸c ch−¬ng tr×nh con øng víi c¸c ng¾t ®Ó phôc vô cho c«ng viÖc nµy + C¸ch 2: Truy cËp trùc tiÕp ®−a vµo c¸c ®Þa chØ cña c¸c cæng (port) th«ng qua c¸c ng«n ng÷ lËp tr×nh C¸ch 1 ®¬n gi¶n tuy nhiªn cã nh−îc ®iÓm tèc ®é truy nhËp chËm I. Sö dông c¸c dÞch vô ng¾t Int 10H cña ROM BIOS D−íi ®©y lµ mét vµi ng¾t cña ROM BIOS 1. §−a mét pixel vμo bé nhí mμn h×nh input AH=0Ch AL=mμu BH=trang CX=x (cét) 8
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
3=>0