當前位置:首頁 » 服務存儲 » 計算話音存儲器
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

計算話音存儲器

發布時間: 2022-06-25 17:28:32

1. 多媒體計算機系統中的聲音,按存儲形式劃分可分為( )。

1按存儲介質半導體存儲器:用半導體器件組成的存儲器。磁表面存儲器:用磁性材料做成的存儲器。 2按存儲方式隨機存儲器:任何存儲單元的內容都能被隨機存取,且存取時間和存儲單元的物理位置無關。順序存儲器:只能按某種順序來存取,存取時間和存儲單元的物理位置有關。 3按讀寫功能只讀存儲器(ROM):存儲的內容是固定不變的,只能讀出而不能寫入的半導體存儲器。各存儲器之間的關系隨機讀寫存儲器(RAM):既能讀出又能寫入的半導體存儲器。 4按信息保存性存儲系統的分級結構非永久記憶的存儲器:斷電後信息即消失的存儲器。永久記憶性存儲器:斷電後仍能保存信息的存儲器。 5按用途根據存儲器在計算機系統中所起的作用,可分為主存儲器、輔助存儲器、高速緩沖存儲器、控制存儲器等。為了解決對存儲器要求容量大,速度快,成本低三者之間的矛盾,通常採用多級存儲器體系結構,即使用高速緩沖存儲器、主存儲器和外存儲器。 6用途特點高速緩沖存儲器Cache 高速存取指令和數據存取速度快,但存儲容量小主存儲器內存存放計算機運行期間的大量程序和數據存取速度較快,存儲容量不大外存儲器外存存放系統程序和大型數據文件及資料庫存儲容量大,位成本低

2. 聲音,視頻,文字以什麼形式存儲在計算機中

以二進制形式存儲在計算機中。

在計算機內部,指令和數據都是用二進制0和1來表示的,因此,計算機系統中信息存儲、處理也都是以二進制為基礎的。聲音與視頻信息在計算機系統中只是數據的一種表現形式,因此也是以二進制來表示的。

(2)計算話音存儲器擴展閱讀:

二進位計數制僅用兩個數碼。0和1,所以,任何具有二個不同穩定狀態的元件都可用來表示數的某一位。而在實際上具有兩種明顯穩定狀態的元件很多。例如,氖燈的"亮"和"熄";開關的」開「和」關「; 電壓的」高「和」低「、」正「和」負「。

紙帶上的」有孔「和「無孔」,電路中的」有信號「和」無信號「,磁性材料的南極和北極等等,不勝枚舉。 利用這些截然不同的狀態來代表數字,是很容易實現的。

不僅如此,更重要的是兩種截然不同的狀態不單有量上的差別,而且是有質上的不同。這樣就能大大提高機器的抗干擾能力,提高可靠性。

3. 存儲器讀寫的工作周期是指什麼

存儲器是具有「記憶」功能的設備,它用具有兩種穩定狀態的物理器件來表示二進制數碼「0」和「1」,這種器件稱為記憶元件或記憶單元。記憶元件可以是磁芯,半導體觸發器、MOS電路或電容器等。
位(bit)是二進制數的最基本單位,也是存儲器存儲信息的最小單位,8位二進制數稱為一個位元組(byte)。當一個數作為一個整體存入或取出時,這個數叫做存儲字。存儲字可以是一個位元組,也可以是若干個位元組。若干個憶記單元組成一個存儲單元,大量的存儲單元的集合組成一個存儲體(MemoryBank)。
為了區分存儲體內的存儲單元,必須將它們逐一進行編號,稱為地址。地址與存儲單元之間一一對應,且是存儲單元的唯一標志。應注意存儲單元的地址和它裡面存放的內容完全是兩回事。
存儲器在計算機中處於不同的位置,可分為主存儲器和輔助存儲器。在主機內部,直接與CPU交換信息的存儲器稱主存儲器或內存儲器。在執行期間,程序的數據放在主存儲器內,各個存儲單元的內容可通過指令隨機訪問,這樣的存儲器稱為隨機存取存儲器(RAM)。另一種存儲器叫只讀存儲器(ROM),裡面存放一次性寫入的程序或數據,僅能隨機讀出。RAM和ROM共同分享主存儲器的地址空間。
因於結構、價格原因,主存儲器的容量受限。為滿足計算的需要而採用了大容量的輔助存儲器或稱外存儲器,如磁碟、光碟等。
存儲器的主要技術指標
存儲器的特性由它的技術參數來描述。
一、存儲容量:存儲器可以容納的二進制信息量稱為存儲容量。主存儲器的容量是指用地址寄存器(MAR)產生的地址能訪問的存儲單元的數量。如N位字長的MAR能夠編址最多達2N個存儲單元。一般主存儲器(內存)容量在幾十K到幾M位元組左右;輔助存儲器(外存)在幾百K到幾千M位元組。
二、存儲周期:存儲器的兩個基本操作為讀出與寫入,是指將信息在存儲單元與存儲寄存器(MDR)之間進行讀寫。存儲器從接收讀出命令到被讀出信息穩定在MDR的輸出端為止的時間間隔,稱為取數時間TA;兩次獨立的存取操作之間所需的最短時間稱為存儲周期TMC。半導體存儲器的存儲周期一般為100ns-200ns。
三、存儲器的可靠性:存儲器的可靠性用平均故障間隔時間MTBF來衡量。MTBF可以理解為兩次故障之間的平均時間間隔。MTBF越長,表示可靠性越高,即保持正確工作能力越強。
四、性能價格比:性能主要包括存儲器容量、存儲周期和可靠性三項內容。性能價格比是一個綜合性指標,對於不同的存儲器有不同的要求。對於外存儲器,要求容量極大,而對緩沖存儲器則要求速度非常快,容量不一定大。因此性能/價格比是評價整個存儲器系統很重要的指標

4. SM是哪個儲存器的標識符

sm話音存儲器:Speech Memory的縮寫

5. T接線器有哪些部分組成各部分的容量如何計算(包括存儲單元的個數,每個存儲單元存儲的比特數。)

由話音存儲器 控制存儲器 串/並變換電路 組成

6. 運算器、存儲器、控制器、輸入設備、輸出設備麻煩誰幫忙把這幾個名詞解釋給寫一下

運算器:
arithmetic unit,計算機中執行各種算術和邏輯運算操作的部件。運算器的基本操作包括加、減、乘、除四則運算,與、或、非、異或等邏輯操作,以及移位、比較和傳送等操作,亦稱算術邏輯部件(ALU)。

存儲器
存儲器(Memory)是計算機系統中的記憶設備,用來存放程序和數據。計算機中的全部信息,包括輸入的原始數據、計算機程序、中間運行結果和最終運行結果都保存在存儲器中。它根據控制器指定的位置存入和取出信息。

控制器
控制器是計算機的指揮中心,負責決定執行程序的順序,給出執行指令時機器各部件需要的操作控制命令.由程序計數器、指令寄存器、指令解碼器、時序產生器和操作控制器組成,它是發布命令的「決策機構」,即完成協調和指揮整個計算機系統的操作。

輸入設備
向計算機輸入數據和信息的設備。是計算機與用戶或其他設備通信的橋梁。輸入設備是用戶和計算機系統之間進行信息交換的主要裝置之一.鍵盤,滑鼠,攝像頭, 掃描儀,光筆,手寫輸入板,游戲桿,語音輸入裝置等都屬於輸入設備輸入設備(Input Device )是人或外部與計算機進行交互的一種裝置,用於把原始數據和處理這些數的程序輸入到計算機中。

輸出設備
輸出設備(Output Device)是人與計算機交互的一種部件,用於數據的輸出。它把各種計算結果數據或信息以數字、字元、圖像、聲音等形式表示出來。常見的有顯示器、列印機、繪圖儀、影像輸出系統、語音輸出系統、磁記錄設備等。

7. 計算機存儲器怎麼計算

存儲器分為內存儲器(簡稱內存或主存)、外存儲器(簡稱外存或輔存)。外存儲器一般也可作為輸入/輸出設備。計算機把要執行的程序和數據存入內存中,內存一般由半導體器構成。半導體存儲器可分為三大類:隨機存儲器、只讀存儲器、特殊存儲器。

RAM

RAM是隨機存取存儲器(Random Access Memory),其特點是可以讀寫,存取任一單元所需的時間相同,通電是存儲器內的內容可以保持,斷電後,存儲的內容立即消失。RAM可分為動態(Dynamic RAM)和靜態(Static RAM)兩大類。所謂動態隨機存儲器DRAM是用MOS電路和電容來作存儲元件的。由於電容會放電,所以需要定時充電以維持存儲內容的正確,例如互隔2ms刷新一次,因此稱這為動態存儲器。所謂靜態隨機存儲器SRAM是用雙極型電路或MOS電路的觸發器來作存儲元件的,它沒有電容放電造成的刷新問題。只要有電源正常供電,觸發器就能穩定地存儲數據。DRAM的特點是集成密度高,主要用於大容量存儲器。SRAM的特點是存取速度快,主要用於調整緩沖存儲器。

ROM

ROM是只讀存儲器(Read Only Memory),它只能讀出原有的內容,不能由用戶再寫入新內容。原來存儲的內容是由廠家一次性寫放的,並永久保存下來。ROM可分為可編程(Programmable)ROM、可擦除可編程(Erasable Programmable)ROM、電擦除可編程(Electrically Erasable Programmable)ROM。如,EPROM存儲的內容可以通過紫外光照射來擦除,這使它的內可以反復更改。

特殊固態存儲器

包括電荷耦合存儲器、磁泡存儲器、電子束存儲器等,它們多用於特殊領域內的信息存儲。

此外,描述內、外存儲容量的常用單位有:

①位/比特(bit):這是內存中最小的單位,二進制數序列中的一個0或一個1就是一比比特,在電腦中,一個比特對應著一個晶體管。

②位元組(B、Byte):是計算機中最常用、最基本的存在單位。一個位元組等於8個比特,即1 Byte=8bit。

③千位元組(KB、Kilo Byte):電腦的內存容量都很大,一般都是以千位元組作單位來表示。1KB=1024Byte。

④兆位元組(MB Mega Byte):90年代流行微機的硬碟和內存等一般都是以兆位元組(MB)為單位。1 MB=1024KB。

⑤吉位元組(GB、Giga Byte):目前市場流行的微機的硬碟已經達到4.3GB、6.4GB、8.1GB、12G、13GB等規格。1GB=1024MB。

⑥太位元組(TB、Tera byte):1TB=1024GB。

8. 計算機各硬體的功能及作用

硬體
「計算機硬體」的簡稱。與「軟體」相對。電子計算機系統中所有實體部件和設備的統稱。從基本結構上來講,電腦可以分為五大部分:運算器、存儲器、控制器、輸入設備、輸出設備等。

一般我們看到的電腦都是由:主機(主要部分)、輸出設備(顯示器)、輸入設備(鍵盤和滑鼠)三大件組成。 而主機是電腦的主體 ,在主機箱中有:主板、CPU、內存、電源、顯卡、音效卡、網卡、硬碟、軟碟機、光碟機等硬體。其中,主板、CPU、內存、電源、顯卡、硬碟是必須的,只要主機工作,這幾樣缺一不可。

下面我們將一步一步的來揭開它們的神秘面紗。

(一) 機箱

首先來看看機箱,機箱除了給計算機系統建立一個外觀形象之外,還為計算機系統的其它配件提供安裝支架。另外,它還可以減輕機箱內向外輻射的電磁污染,保護用戶的健康和其它設備的正常使用,真可稱的上是計算機各配件的「家」。目前市場上的主流產品是採用ATX結構的立式機箱,AT結構的機箱已經被淘汰了。機箱內部前面板側有用於安裝硬碟、光碟機、軟碟機的托架,後面板側上部有一個用來安裝電源的位置,除此之外,其風部還附有一些引線,用於連接POWER鍵,REST鍵,PC揚聲器,以及一些指示燈。

(二) 主板

主板(英文名Mainboard 或 Motherboard)是計算機系統中最大的一塊電路板,主板又叫主機板、系統板、或母板,它安裝在機箱內,也是微機最重要的部件之一,它的類型和檔次決定整個 微機系統的類型和檔次。它可分為AT主板和ATX主板。主板是由各種介面,擴展槽,插座以及晶元組組成。主板選購的基本策略: 速度、穩定性兼容性、擴充能力、升級能力主板中的晶元組是構成主板的核心,其作用是在BIOS和操作系統的控制下規定的技術標准和規范通過主板為微機系統中的CPU、內存條、圖形卡等部件建立可靠、正確的安裝、運行環境,為各種IDE介面存儲以及其他外部設備提供方便、可靠的連接介面。

(三) CPU

CPU(Central Processing Unit,中央處理器)是計算機最重要的部件之一。是一台電腦的核心,相當於人的大腦,它的內部結構分為控制單元、邏輯單元和存儲單元三大部分。CPU的介面標准分為兩大類:一種是Socket類型,另一種是Slot類型。它的主要性能指標:主頻、前端匯流排頻 率、L1 和L2Cache的容量和速率、支持的擴展指令集、CPU內核工作電壓地址匯流排寬度、CPU的選 購。CPU的生產廠商現在主要有Intel、AMD兩家,其中Intel公司的CPU產品市場佔有量最高。目 前市場上主流的CPU有:Intel公司的Pentium III 系列、Pentium 4 系列、Celeron系列;AMD 公司的K7系列。

(四)內存

內存泛指計算機系統中存放數據與指令的半導體存儲單元。按其用途可分為主存儲器和輔助

存器。按工作原理分為ROM和RAM。ROM可分為只讀ROM、可編程可擦除ROM和可編程ROM.而RAM可RAM為靜態

和動態RAM。內存(RAM)是CPU處理信息的地力,它的計算單位是兆位元組MB,即Million Bytes。1個位元組又

由8位(bit)二進制數(0、1)組成。存儲1個英文字母需要佔用1個位元組(Byte)空間。而存儲1個漢字則需佔2個位元組空間。

早期的計算機主要運行D05系統和DOS程序。那時內存的價格是很貴的,DOS對內存的要求也不高,只

需640KB(1KB=1024B),所以那時的計算機內存配得都不大,1MB或2MB就很好。

現在內存價格大大降低了,而Windows和一些新的應用軟體對內存的需要是貪得無厭的,內存越大,

它工作得就越好,所以現在的汁算機64MB內存已算是最低配置,有錢的話,配上128MB乃至512MB也都不

等過。目前比較知名的品牌有Hyundai(現代原廠)、Kingstone(金仕頓)、Kingmax(勝創)、Samsung(三星)、Transcend(創見)和CEIL(金邦)等。

(五)硬碟

硬碟(Hard Disk)是計算機系統的重要存儲設備,其性能直接影響計算機的整體性能。硬碟是一種

固定的存儲設備,它的存儲介質是若干個鋼性磁碟片,其特點:速度快、容量大、可靠靠性高幾乎不存在磨損問題。目前常見的硬碟介面有二種,分別是IDE介面和SCSI介面。口碑不錯的硬碟有邁拓(Maxtor)、希捷(Seagate)、IBM、西部數據(Western Digtal)等。

(六)光碟驅動器

光碟驅動器(CD-ROM)就是讀取光碟上數據的工具,而光碟的特點:容量大、速度快兼容性強、碟片成本低。具前的主流為52倍速的IDE介面光碟機。

(七)軟碟機

軟盤驅動器(Floppy Disk)是電腦一個不可缺少的部件,在必要的時候,它可以為我們啟動計機,還能用它來傳遞和備份一些比較小的文件。現在一般都用3.5英寸的,古老年代用5.25英寸的,現在我們去買人家都不賣了。

(八)顯卡

顯卡是顯示器與主機通信的控制電路和介面,其作用是將主機的數字信號轉換為模擬信號, 並在顯示器上顯示出來。顯卡的基本作用就是控制圖形的輸出,它工作在CPU和顯示器之間它的 主要部件有:顯示晶元、RAMDAC、顯示內存、VGA BIOS VGA插座、特性連接器等。顯卡的三 項重要指標:刷新頻率、解析度、色深。從匯流排類型分,顯示卡有ISA、VESA、PCI、AGP四種。 現在AGP顯示卡已非常普遍。

(九)音效卡

音效卡,想聽音樂可少不了它,電腦就是通過這個玩意傳送聲音給音箱的哦。音效卡是多媒體電腦的主要

部件之一,它包含記錄和播放聲音所需的硬體。音效卡的種類很多,功能也不完全相同,但它們有一些共同的基本功能:能錄制話音(聲音)和音樂,能選擇以單聲道或雙聲道錄音,並且能控制采樣速率。音效卡上有數模轉換晶元(DAC),用來把數字化的聲音信號轉換成模擬信號,同時還有模數轉換晶元(ADC),用來把模擬聲音信號轉換成數字信號。音效卡上有音樂數字介面(MIDI),能使用MIDI樂器,諸如鋼琴鍵、合成器和其MIDI設備。音效卡有聲音混合功能,允許控制聲源和音頻信號的大小。好的音效卡能對低音部分和高音部分進行控制。音效卡上還有一個或幾個CD 音頻輸入介面,用以接收CD-ROM的聲音採集信號。根據匯流排的不同音效卡分為兩大類,一種是ISA音效卡,另一種是PCI音效卡。

(十)顯示器

顯示器(Monitor)是計算機的主要輸出設備,沒有它,我們和計算機打交道的時候,將變成睜眼瞎。也許您的工作每天都需要面對計算機的屏幕,可是您是否真正的了解它呢?正因為這樣很多人在購買電腦時,只關心顯示器是14寸還是15寸的,而並不關心顯示器的其它性能,其實購買一台電腦最不應該省錢的就是顯示器了。目前顯視器品牌繁多,市場上常見的品牌有:三星(Samsung)、索尼(Sony)、LG、優派(Viewsonic)、飛利浦(Philips)、宏基(Acer)、美格(MAG)、EMC等不下幾十種。根據顯像原理劃分,顯視器可以分為CRT顯視器(陰極射線管顯視器)、LCD顯視器(液晶矩陣平面顯示器)和等離子顯視器等。其中常見的是CRT顯視器和LCD顯視器,而LCD顯視器為未來幾年的主流。
...
顯示器由監視器(Monitor)和顯示適配器(俗稱顯卡Adapter)2部分組成.
顯示器的種類有很多,如陰極射線管(Cathode Ray Tube,CRT)、液晶顯示器(Liquid Crystal Display,LCD)、等離子顯示器(DDP)、場發射顯示器(PED)等等。但最具實用與商品化的是CRT和LCD。
1)CRT顯示器的主要性能指標:
A。解析度;
B。掃描頻率;
C。帶寬;
D。TCO認證。

2)LCD顯示器主要性能指標:
A。響應時間;
B。可視角度;
C。點距;
D。解析度;
E。刷新率;
F。亮度;
G。對比度。

3)顯示卡:又稱圖形適配器。目前個人計算機採用PCI顯示卡和AGP顯示卡,一般都帶有3D加速功能

(十一)鍵盤

鍵盤(Keyboard)我想大家應該不陌生,我只簡單作一些介紹。鍵盤是最常用也是最主要的輸入設備,通過鍵盤,可以將英文字母、數字、標點符號等輸入到計算機中,從而向計算機發出命令、輸入數據等。自IBM PC推出以來,鍵盤經歷了83鍵、84鍵和101/102鍵,Windows95面世後,在101鍵盤的基礎上改進成

了104/105鍵盤,增加了兩個Windows 按鍵。 為了使人操作電腦更舒適,於是出現"人體鍵盤",鍵盤的形狀非常符合兩手的擺放姿勢,操作起來就特別的輕松。

(十二)滑鼠

滑鼠(Mouse)首先應用於蘋果電腦。隨著Windows操作系統的流行,滑鼠變成了必需品,更有些軟體必須要安裝滑鼠才能運行,簡直是無鼠寸步難行。從介面來講,滑鼠有兩種類型:PS/2型滑鼠和串列滑鼠。從滑鼠的構造來講,有機械式和光電式。光電滑鼠是利用光的反射來確定滑鼠的移動,滑鼠內部有紅外光發射和接受裝置,要讓光電式滑鼠發揮出強大的功能,一定要配備一塊專用的感光板。光電滑鼠的定位精度要比機械滑鼠高出許多。另外滑鼠還有單鍵、兩鍵和三鍵之分,蘋果電腦通常都使用單鍵滑鼠,兩鍵滑鼠通常叫做MS滑鼠,三鍵滑鼠叫做PC滑鼠。但滑鼠用於兩鍵或三鍵主要決定於軟體,比如對於Windows 98和Windows95及其應用軟體,滑鼠只能用於兩鍵狀態,否則電腦不認,但有些軟體可支持第三鍵,比如AutoCAD

廣義的硬體不是特指計算機硬體,而是指泛指一些設施、設備、材料等有形物質及無形的精神物質。
硬體:構成電腦的物質實體,稱為硬體。如主機、顯示器、鍵盤、滑鼠。

9. 當計數器輸出為00011時,寫入話音存儲器的內容是什麼寫入到那個單元

文件 I/O 在C++中比烤蛋糕簡單多了。 在這篇文章里,我會詳細解釋ASCII和二進制文件的輸入輸出的每個細節,值得注意的是,所有這些都是用C++完成的。

一、ASCII 輸出

為了使用下面的方法, 你必須包含頭文件<fstream.h>(譯者註:在標准C++中,已經使用<fstream>取代< fstream.h>,所有的C++標准頭文件都是無後綴的。)。這是 <iostream.h>的一個擴展集, 提供有緩沖的文件輸入輸出操作. 事實上, <iostream.h> 已經被<fstream.h>包含了, 所以你不必包含所有這兩個文件, 如果你想顯式包含他們,那隨便你。我們從文件操作類的設計開始, 我會講解如何進行ASCII I/O操作。如果你猜是"fstream," 恭喜你答對了! 但這篇文章介紹的方法,我們分別使用"ifstream"?和 "ofstream" 來作輸入輸出。

如果你用過標准控制台流"cin"?和 "cout," 那現在的事情對你來說很簡單。 我們現在開始講輸出部分,首先聲明一個類對象。ofstream fout;

這就可以了,不過你要打開一個文件的話, 必須像這樣調用ofstream::open()。

fout.open("output.txt");

你也可以把文件名作為構造參數來打開一個文件.

ofstream fout("output.txt");

這是我們使用的方法, 因為這樣創建和打開一個文件看起來更簡單. 順便說一句, 如果你要打開的文件不存在,它會為你創建一個, 所以不用擔心文件創建的問題. 現在就輸出到文件,看起來和"cout"的操作很像。 對不了解控制台輸出"cout"的人, 這里有個例子。

int num = 150;
char name[] = "John Doe";
fout << "Here is a number: " << num << "\n";
fout << "Now here is a string: " << name << "\n";

現在保存文件,你必須關閉文件,或者回寫文件緩沖. 文件關閉之後就不能再操作了, 所以只有在你不再操作這個文件的時候才調用它,它會自動保存文件。 回寫緩沖區會在保持文件打開的情況下保存文件, 所以只要有必要就使用它。回寫看起來像另一次輸出, 然後調用方法關閉。像這樣:

fout << flush; fout.close();

現在你用文本編輯器打開文件,內容看起來是這樣:

Here is a number: 150 Now here is a string: John Doe

很簡單吧! 現在繼續文件輸入, 需要一點技巧, 所以先確認你已經明白了流操作,對 "<<" 和">>" 比較熟悉了, 因為你接下來還要用到他們。繼續…

二、ASCII 輸入

輸入和"cin" 流很像. 和剛剛討論的輸出流很像, 但你要考慮幾件事情。在我們開始復雜的內容之前, 先看一個文本:

12 GameDev 15.45 L This is really awesome!

為了打開這個文件,你必須創建一個in-stream對象,?像這樣。

ifstream fin("input.txt");

現在讀入前四行. 你還記得怎麼用"<<" 操作符往流里插入變數和符號吧?好,?在 "<<" (插入)?操作符之後,是">>" (提取) 操作符. 使用方法是一樣的. 看這個代碼片段.

int number;
float real;
char letter, word[8];
fin >> number; fin >> word; fin >> real; fin >> letter;

也可以把這四行讀取文件的代碼寫為更簡單的一行。

fin >> number >> word >> real >> letter;

它是如何運作的呢? 文件的每個空白之後, ">>" 操作符會停止讀取內容, 直到遇到另一個>>操作符. 因為我們讀取的每一行都被換行符分割開(是空白字元), ">>" 操作符只把這一行的內容讀入變數。這就是這個代碼也能正常工作的原因。但是,可別忘了文件的最後一行。

This is really awesome!

如果你想把整行讀入一個char數組, 我們沒辦法用">>"?操作符,因為每個單詞之間的空格(空白字元)會中止文件的讀取。為了驗證:

char sentence[101]; fin >> sentence;

我們想包含整個句子, "This is really awesome!" 但是因為空白, 現在它只包含了"This". 很明顯, 肯定有讀取整行的方法, 它就是getline()。這就是我們要做的。

fin.getline(sentence, 100);

這是函數參數. 第一個參數顯然是用來接受的char數組. 第二個參數是在遇到換行符之前,數組允許接受的最大元素數量. 現在我們得到了想要的結果:「This is really awesome!」。

你應該已經知道如何讀取和寫入ASCII文件了。但我們還不能罷休,因為二進制文件還在等著我們。

三、二進制 輸入輸出

二進制文件會復雜一點, 但還是很簡單的。首先你要注意我們不再使用插入和提取操作符(譯者註:<< 和 >> 操作符). 你可以這么做,但它不會用二進制方式讀寫。你必須使用read() 和write() 方法讀取和寫入二進制文件. 創建一個二進制文件, 看下一行。

ofstream fout("file.dat", ios::binary);

這會以二進制方式打開文件, 而不是默認的ASCII模式。首先從寫入文件開始。函數write() 有兩個參數。 第一個是指向對象的char類型的指針, 第二個是對象的大小(譯者註:位元組數)。 為了說明,看例子。

int number = 30; fout.write((char *)(&number), sizeof(number));

第一個參數寫做"(char *)(&number)". 這是把一個整型變數轉為char *指針。如果你不理解,可以立刻翻閱C++的書籍,如果有必要的話。第二個參數寫作"sizeof(number)". sizeof() 返回對象大小的位元組數. 就是這樣!

二進制文件最好的地方是可以在一行把一個結構寫入文件。 如果說,你的結構有12個不同的成員。 用ASCII?文件,你不得不每次一條的寫入所有成員。 但二進制文件替你做好了。 看這個。

struct OBJECT { int number; char letter; } obj;
obj.number = 15;
obj.letter = 『M』;
fout.write((char *)(&obj), sizeof(obj));

這樣就寫入了整個結構! 接下來是輸入. 輸入也很簡單,因為read()?函數的參數和 write()是完全一樣的, 使用方法也相同。

ifstream fin("file.dat", ios::binary); fin.read((char *)(&obj), sizeof(obj));

我不多解釋用法, 因為它和write()是完全相同的。二進制文件比ASCII文件簡單, 但有個缺點是無法用文本編輯器編輯。 接著, 我解釋一下ifstream 和ofstream 對象的其他一些方法作為結束.

四、更多方法

我已經解釋了ASCII文件和二進制文件, 這里是一些沒有提及的底層方法。

檢查文件

你已經學會了open() 和close() 方法, 不過這里還有其它你可能用到的方法。

方法good() 返回一個布爾值,表示文件打開是否正確。

類似的,bad() 返回一個布爾值表示文件打開是否錯誤。 如果出錯,就不要繼續進一步的操作了。

最後一個檢查的方法是fail(), 和bad()有點相似, 但沒那麼嚴重。

讀文件

方法get() 每次返回一個字元。

方法ignore(int,char) 跳過一定數量的某個字元, 但你必須傳給它兩個參數。第一個是需要跳過的字元數。 第二個是一個字元, 當遇到的時候就會停止。 例子,

fin.ignore(100, 『\n』);

會跳過100個字元,或者不足100的時候,跳過所有之前的字元,包括 『\n』。

方法peek() 返迴文件中的下一個字元, 但並不實際讀取它。所以如果你用peek() 查看下一個字元, 用get() 在peek()之後讀取,會得到同一個字元, 然後移動文件計數器。

方法putback(char) 輸入字元, 一次一個, 到流中。我沒有見到過它的使用,但這個函數確實存在。

寫文件

只有一個你可能會關注的方法.?那就是 put(char), 它每次向輸出流中寫入一個字元。

打開文件

當我們用這樣的語法打開二進制文件:

ofstream fout("file.dat", ios::binary);

"ios::binary"是你提供的打開選項的額外標志. 默認的, 文件以ASCII方式打開, 不存在則創建, 存在就覆蓋. 這里有些額外的標志用來改變選項。

ios::app 添加到文件尾
ios::ate 把文件標志放在末尾而非起始。
ios::trunc 默認. 截斷並覆寫文件。
ios::nocreate 文件不存在也不創建。
ios::noreplace 文件存在則失敗。

文件狀態

我用過的唯一一個狀態函數是eof(), 它返回是否標志已經到了文件末尾。 我主要用在循環中。 例如, 這個代碼斷統計小寫『e』 在文件中出現的次數。

ifstream fin("file.txt");
char ch; int counter;
while (!fin.eof()) {
ch = fin.get();
if (ch == 『e』) counter++;
}
fin.close();

我從未用過這里沒有提到的其他方法。 還有很多方法,但是他們很少被使用。參考C++書籍或者文件流的幫助文檔來了解其他的方法。

結論

你應該已經掌握了如何使用ASCII文件和二進制文件。有很多方法可以幫你實現輸入輸出,盡管很少有人使用他們。我知道很多人不熟悉文件I/O操作,我希望這篇文章對你有所幫助。 每個人都應該知道. 文件I/O還有很多顯而易見的方法,?例如包含文件 <stdio.h>. 我更喜歡用流是因為他們更簡單。 祝所有讀了這篇文章的人好運, 也許以後我還會為你們寫些東西

10. 計算器存儲器可以分為

存儲器:是計算機的重要組成部分.
它可分為:
計算機內部的存儲器(簡稱內存)
計算機外部的存儲器(簡稱外存)
內存儲器從功能上可以分為:讀寫存儲器 RAM、只讀存儲器ROM兩大類
計算機存儲容量以位元組為單位,它們是:位元組B( 1Byte=8bit)、千位元組(1KB=1024B)、兆位元組(1MB=1024KB)、千兆位元組(1GB=1024MB)、1TB=1024GB
二、計算機的外存儲器一般有:軟盤和軟碟機、硬碟、CD-ROM、可擦寫光碟機即CD-RW光碟機還有USB介面的移動硬碟、光碟機、或可擦寫電子硬碟(優盤)等。