精品理论电影在线_日韩视频一区二区_一本色道精品久久一区二区三区_香蕉综合视频

C基礎(chǔ):C語(yǔ)言的常用庫(kù)函數(shù)學(xué)習(xí)(四)

發(fā)布時(shí)間:2011-08-29 共3頁(yè)

  MK_FP()設(shè)置一個(gè)遠(yuǎn)指針的宏
  原形:void far *MK_FP(unsigned seg,unsigned ofs)
  功能:通過(guò)段值(seg)和偏移量(ofs)建立一個(gè)遠(yuǎn)指針
  返回值:遠(yuǎn)指針
  頭文件:dos.h
  movedata()拷貝數(shù)據(jù)函數(shù)
  原形:void movedata(unsigned srcseg,unsigned srcoff,unsigned dstseg,unsigned dstoff,size_t n)
  功能:從原地址(srcseg:srcoff)拷貝n個(gè)字節(jié)的數(shù)據(jù)到目標(biāo)地址(dstseg:dstoff)。
  頭文件:mem.h、string.h
  _open()打開(kāi)一個(gè)文件進(jìn)行讀寫(xiě)的函數(shù)
  原形:int _open(path,oflags)
  char *path;//已建立文件的路徑名
  int oflags;//方式
  功能:打開(kāi)由path指定的文件,返回文件的句柄
  返回值:0(正常結(jié)束);-1(錯(cuò)誤)
  頭文件:fcntl.h、io.h
  open()打開(kāi)文件進(jìn)行讀寫(xiě)的函數(shù)
  原形:int open(const char *path,int access[,unsigned mode])
  使用方法:文件句柄=open(\"文件名\",打開(kāi)模式|打開(kāi)模式);
  功能:打開(kāi)path指定的文件,根據(jù)access指定的模式值讀寫(xiě)。
  access模式:
  O_RDONLY 以只讀方式打開(kāi)
  O_WRONLY 以只寫(xiě)方式打開(kāi)
  O_RDOWR  以讀寫(xiě)方式打開(kāi)
  以上標(biāo)志只能使用一個(gè),以下可以用|組合使用
  O_NDELAY
  O_APPEND 若置位,每次寫(xiě)操作前都使文件指針指到文件末尾
  O_CREAT  若文件不存在則創(chuàng)建
  O_TRUNC  若文件已存在,則將文件長(zhǎng)度截為0
  O_EXCL  只和O_CREAT一起使用,若文件已經(jīng)存在,返回錯(cuò)誤代碼
  O_BINARY 以二進(jìn)制方式打開(kāi)
  O_TEXT  以文本方式打開(kāi)
  如果使用了O_CREAT方式,則需要提供參數(shù)mode
  (S_IWRITE可寫(xiě);S_IREAD可讀;S_IREAD|S_IWRITE可讀寫(xiě))
  返回值:文件句柄(成功時(shí));-1(失敗時(shí))。
   成功時(shí),文件指針指向文件頭。
  頭文件:fcntl.h、io.h
  outport()輸出一個(gè)字到端口中的函數(shù)
  原形:void outport(int portid,int value)
  調(diào)用方式:outport(0x端口號(hào),要輸出的字);
  功能:往指定端口地址輸出一個(gè)字。
  頭文件:dos.h
  outportb()輸出一個(gè)字節(jié)到端口中的函數(shù)
  原形:void outportb(int portid,unsigned char value)
  調(diào)用方式:outportb(0x端口號(hào),要輸出的字節(jié));
  功能:往指定端口地址輸出一個(gè)字節(jié)。
  附:PC I/O地址分配
  PC只用了10位地址線(xiàn)(A0-A9)進(jìn)行譯碼,其尋址的范圍為0H-3FFH,共有1024個(gè)I/O地址。這1024個(gè)地址中前半段(A9=0,范圍為0H-1FFH)是屬于主機(jī)板I/O譯碼,后半段(A9=1,范圍為200H-3FFH)則是用來(lái)擴(kuò)展插槽上的I/O譯碼用。
        I/O端口功能表
  ———————————————————————————
  I/O地址 功能、用途
  ———————————————————————————
  0    DMA通道0,內(nèi)存地址寄存器(DMA控制器1(8237))
  1    DMA通道0, 傳輸計(jì)數(shù)寄存器
  2    DMA通道1,內(nèi)存地址寄存器
  3    DMA通道1, 傳輸計(jì)數(shù)寄存器
  4    DMA通道2,內(nèi)存地址寄存器
  5    DMA通道2, 傳輸計(jì)數(shù)寄存器
  6    DMA通道3,內(nèi)存地址寄存器
  7    DMA通道3, 傳輸計(jì)數(shù)寄存器
  8    DMA通道0-3的狀態(tài)寄存器
  AH    DMA通道0-3的屏蔽寄存器
  BH    DMA通道0-3的方式寄存器
  CH    DMA清除字節(jié)指針
  DH    DMA主清除字節(jié)
  EH    DMA通道0-3的清屏蔽寄存器
  FH    DMA通道0-3的寫(xiě)屏蔽寄存器
  19H   DMA起始寄存器
  20H-3FH 可編程中斷控制器1(8259)使用
  40H   可編程中斷計(jì)時(shí)器(8253)使用,讀/寫(xiě)計(jì)數(shù)器0
  41H   可編程中斷計(jì)時(shí)器寄存器
  42H   可編程中斷計(jì)時(shí)器雜項(xiàng)寄存器
  43H   可編程中斷計(jì)時(shí)器,控制字寄存器
  44H   可編程中斷計(jì)時(shí)器,雜項(xiàng)寄存器(AT)
  47H   可編程中斷計(jì)時(shí)器,計(jì)數(shù)器0的控制字寄存器
  48H-5FH 可編程中斷計(jì)時(shí)器使用
  60H-61H 鍵盤(pán)輸入數(shù)據(jù)緩沖區(qū)
  61H   AT:8042鍵盤(pán)控制寄存器/XT:8255輸出寄存器
  62H   8255輸入寄存器
  63H   8255命令方式寄存器
  64H   8042鍵盤(pán)輸入緩沖區(qū)/8042狀態(tài)
  65H-6FH 8255/8042專(zhuān)用
  70H   CMOS RAM地址寄存器
  71H   CMOS RAM數(shù)據(jù)寄存器
  80H   生產(chǎn)測(cè)試端口
  81H   DMA通道2,頁(yè)表地址寄存器
  82H   DMA通道3,頁(yè)表地址寄存器
  83H   DMA通道1,頁(yè)表地址寄存器
  87H   DMA通道0,頁(yè)表地址寄存器
  89H   DMA通道6,頁(yè)表地址寄存器
  8AH   DMA通道7,頁(yè)表地址寄存器
  8BH   DMA通道5,頁(yè)表地址寄存器
  8FH   DMA通道4,頁(yè)表地址寄存器

百分百考試網(wǎng) 考試寶典

立即免費(fèi)試用