CO-寄存器(Register)

0.目錄

  1. 基本含義
  2. 基本概念
  3. 結(jié)構(gòu)
  4. 類型
    4.1 通用寄存器組
    4.2 指針和變址寄存器
    4.3 段寄存器
    4.4 指令指針寄存器IP
    4.5 標志寄存器FR
    4.6 移位寄存器SR
  5. 工作原理
  6. 寄存器組織
  7. 寄存器尋址

1.基本含義

寄存器的功能是存儲二進制代碼倒信,它是由具有存儲功能的觸發(fā)器組合起來構(gòu)成的隙弛。一個觸發(fā)器可以存儲1位二進制代碼哗脖,故存放n位二進制代碼的寄存器杨帽,需用n個觸發(fā)器來構(gòu)成。

按照功能的不同嵌赠,可將寄存器分為基本寄存器和移位寄存器兩大類板甘。基本寄存器只能并行送入數(shù)據(jù)浑侥,也只能并行輸出姊舵。移位寄存器中的數(shù)據(jù)可以在移位脈沖作用下依次逐位右移或左移,數(shù)據(jù)既可以并行輸入寓落、并行輸出括丁,也可以串行輸入、串行輸出伶选,還可以并行輸入史飞、串行輸出尖昏,或串行輸入、并行輸出构资,十分靈活会宪,用途也很廣。

寄存器是CPU內(nèi)部用來存放數(shù)據(jù)的一些小型存儲區(qū)域蚯窥,用來暫時存放參與運算的數(shù)據(jù)和運算結(jié)果掸鹅。其實寄存器就是一種常用的時序邏輯電路,但這種時序邏輯電路只包含存儲電路拦赠。寄存器的存儲電路是由鎖存器或觸發(fā)器構(gòu)成的巍沙,因為一個鎖存器或觸發(fā)器能存儲1位二進制數(shù),所以由N個鎖存器或觸發(fā)器可以構(gòu)成N位寄存器荷鼠。寄存器是中央處理器內(nèi)的組成部分句携。寄存器是有限存儲容量的高速存儲部件,它們可用來暫存指令允乐、數(shù)據(jù)和位址矮嫉。

在計算機領(lǐng)域,寄存器是CPU內(nèi)部的元件牍疏,包括通用寄存器蠢笋、專用寄存器和控制寄存器。寄存器擁有非常高的讀寫速度鳞陨,所以在寄存器之間的數(shù)據(jù)傳送非匙蚰快。

Cortex-M4總共有18個寄存器厦滤,相比傳統(tǒng)ARM(如ARM7/ARM9/Cortex-A系列)的38個寄存器已減少很多援岩,減少了內(nèi)核核心面積(Die-size)。

對于編譯器非常友好易用掏导,例如:包含靈活的寄存器配置享怀,任意寄存器之間可實現(xiàn)單周期乘法,任意寄存器可以作為數(shù)據(jù)趟咆、結(jié)構(gòu)或數(shù)組的指針添瓷。此外,Cortex-M4還包含4個特殊功能寄存器PRIMASK忍啸、FAUI仰坦。TMASK、BASEPRI和CONTROL计雌。

2.基本概念

寄存器最起碼具備以下4種功能悄晃。

  1. 清除數(shù)碼:將寄存器里的原有數(shù)碼清除
  2. 接收數(shù)碼:在接收脈沖作用下,將外輸入數(shù)碼存人寄存器中
  3. 存儲數(shù)碼:在沒有新的寫入脈沖來之前,寄存器能保存原有數(shù)碼不變
  4. 輸出數(shù)碼:在輸出脈沖作用下妈橄,才通過電路輸出數(shù)碼

僅具有以上功能的寄存器稱為數(shù)碼寄存器庶近;有的寄存器還具有移位功能,稱為移位寄存器眷蚓。

寄存器有串行和并行兩種數(shù)碼存取方式鼻种。將n位二進制數(shù)一次存人寄存器或從寄存器中讀出的方式稱為并行方式。將n位二進制數(shù)以每次1位沙热,分成n次存人寄存器并從寄存器讀出叉钥,這種方式稱為串行方式。并行方式只需一個時鐘脈沖就可以完成數(shù)據(jù)操作篙贸,工作速度快投队,但需要n根輸入和輸出數(shù)據(jù)線。串行方式要使用幾個時鐘脈沖完成輸入或輸出操作爵川,工作速度慢敷鸦,但只需要一根輸入或輸出數(shù)據(jù)線,傳輸線少寝贡,適用于遠距離傳輸扒披。

PORT1的控制寄存器

3.結(jié)構(gòu)

在數(shù)字電路中,用來存放二進制數(shù)據(jù)或代碼的電路稱為寄存器圃泡。寄存器是由具有存儲功能的觸發(fā)器組合起來構(gòu)成的碟案。一個觸發(fā)器可以存儲1位二進制代碼,存放門位二進制代碼的寄存器需用竹個觸發(fā)器來構(gòu)成洞焙。

對寄存器中的觸發(fā)器只要求它們具有置1蟆淀,置0的功能即可,因而無論是用電平觸發(fā)的觸發(fā)器澡匪,還是用脈沖觸發(fā)或邊沿觸發(fā)的觸發(fā)器,都可以組成寄存器褒链。

由電平觸發(fā)的動作特點可知唁情,在CLK高電平期間,Q端的狀態(tài)跟隨D端狀態(tài)的改變而改變甫匹;CLK變成低電平以后甸鸟,Q端將保持CLK變?yōu)榈碗娖綍r刻D端的狀態(tài)。

74HC175則是用CMOS邊沿觸發(fā)器組成的4位寄存器兵迅,根據(jù)邊沿觸發(fā)的動作特點可知抢韭,觸發(fā)器輸出端的狀態(tài)僅僅取決于CLK上升沿到達時刻D端的狀態(tài)』屑可見刻恭,雖然74LS75和74HC175都是4位寄存器,但由于采用了不同結(jié)構(gòu)類型的觸發(fā)器,所以動作特點是不同的鳍贾。

為了增加使用的靈活性鞍匾,在有些寄存器電路中還附加了一些控制電路,使寄存器又增添了異步置零骑科、輸出三態(tài)控制和保持等功能橡淑。這里所說的保持,是指CLK信號到達時觸發(fā)器不隨D端的輸入信號而改變狀態(tài)咆爽,保持原來的狀態(tài)不變梁棠。

上面介紹的兩個寄存器電路中,接收數(shù)據(jù)時所有各位代碼都是同時輸入的斗埂,而且觸發(fā)器中的數(shù)據(jù)是并行地出現(xiàn)在輸出端的掰茶,因此將這種輸入、輸出方式稱為并行輸入蜜笤、并行輸出方式濒蒋。

基本寄存器邏輯圖

4.類型

4.1 通用寄存器組

通用寄存器組包括AX、BX把兔、CX沪伙、DX4個16位寄存器,用以存放16位數(shù)據(jù)或地址县好。也可用作8位寄存器围橡。用作8位寄存器時分別記為AH、AL缕贡、BH翁授、BL、CH晾咪、CL收擦、DH、DL谍倦。只能存放8位數(shù)據(jù)塞赂,不能存放地址。它們分別是AX昼蛀、BX宴猾、CX、DX的高八位和低八位叼旋。若AX=1234H仇哆,則AH=12H,AL=34H夫植。通用寄存器通用性強讹剔,對任何指令,它們具有相同的功能。為了縮短指令代碼的長度辟拷,在8086中撞羽,某些通用寄存器用作專門用途。例如衫冻,串指令中必須用CX寄存器作為計數(shù)寄存器诀紊,存放串的長度,這樣在串操作指令中不必給定CX的寄存器號隅俘,縮短了串操作指令代碼的長度邻奠。下面一一介紹:

  • AX(AH、AL):累加器为居。有些指令約定以AX(或AL)為源或目的寄存器碌宴。輸入/輸出指令必須通過AX或AL實現(xiàn),例如:端口地址為43H的內(nèi)容讀入CPU的指令為INAL蒙畴,43H或INAX贰镣,43H。目的操作數(shù)只能是AL/AX膳凝,而不能是其他的寄存器
  • BX(BH碑隆、BL):基址寄存器。BX可用作間接尋址的地址寄存器和基地址寄存器蹬音,BH上煤、BL可用作8位通用數(shù)據(jù)寄存器
  • CX(CH、CL):計數(shù)寄存器著淆。CX在循環(huán)和串操作中充當計數(shù)器劫狠,指令執(zhí)行后CX內(nèi)容自動修改,因此稱為計數(shù)寄存器
  • DX(DH永部、DL):數(shù)據(jù)寄存器独泞。除用作通用寄存器外,在1/O指令中可用作端口地址寄存器扬舒,乘除指令中用作輔助累加器
4.2 指針和變址寄存器
  • BP( Base Pointer regilter):基址指針寄存器
  • SP( Stack Pointer Register):堆棧指針寄存器
  • SI( Source Index register):源變址寄存器
  • DI( Destination Index Register):目的變址寄存器

這組寄存器存放的內(nèi)容是某一段內(nèi)地址偏移量阐肤,用來形成操作數(shù)地址,主要在堆棧操作和變址運算中使用讲坎。BP和SP寄存器稱為指針寄存器,與SS聯(lián)用愧薛,為訪問現(xiàn)行堆棧段提供方便晨炕。通常BP寄存器在間接尋址中使用,操作數(shù)在堆棧段中毫炉,由SS段寄存器與BP組合形成操作數(shù)地址即BP中存放現(xiàn)行堆棧段中一個數(shù)據(jù)區(qū)的“基址”的偏移量瓮栗,所以稱BP寄存器為基址指針。

SP寄存器在堆棧操作中使用,PUSH和POP指令是從SP寄存器得到現(xiàn)行堆棧段的段內(nèi)地址偏移量费奸,所以稱SP寄存器為堆棧指針弥激,SP始終指向棧頂。

寄存器SI和DI稱為變址寄存器愿阐,通常與DS一起使用微服,為訪問現(xiàn)行數(shù)據(jù)段提供段內(nèi)地址偏移量。在串指令中缨历,其中源操作數(shù)的偏移量存放在SⅠ中以蕴,目的操作數(shù)的偏移量存放在DI中,SI和DI的作用不能互換辛孵,否則傳送地址相反丛肮。在串指令中,SI魄缚、DI均為隱含尋址宝与,此時,SI和DS聯(lián)用冶匹,D和ES聯(lián)用习劫。

4.3 段寄存器

8086/8088CPU可直接尋址1MB的存儲器空間,直接尋址需要20位地址碼徙硅,而所有內(nèi)部寄存器都是16位的榜聂,只能直接尋址6KB,因此采用分段技術(shù)來解決嗓蘑。將1MB的存儲空間分成若干邏輯段须肆,每段最長64KB,這些邏輯段在整個存儲空間中可浮動桩皿。

8086/8088CPU內(nèi)部設(shè)置了4個16位段寄存器豌汇,它們分別是代碼段寄存器CS、數(shù)據(jù)段寄存器DS泄隔、堆棧段寄存器SS拒贱、附加段寄存器ES、由它們給出相應(yīng)邏輯段的首地址佛嬉,稱為“段基址”逻澳。段基址與段內(nèi)偏移地址組合形成20位物理地址,段內(nèi)偏移地址可以存放在寄存器中暖呕,也可以存放在存儲器中斜做。

例如:代碼段寄存器CS存放當前代碼段基地址,IP指令指針寄存器存放了下一條要執(zhí)行指令的段內(nèi)偏移地址湾揽,其中CS=2000H瓤逼,IP=001AH笼吟。通過組合,形成20位存儲單元的尋址地址為2001AH霸旗。

代碼段內(nèi)存放可執(zhí)行的指令代碼贷帮,數(shù)據(jù)段和附加段內(nèi)存放操作的數(shù)據(jù),通常操作數(shù)在現(xiàn)行數(shù)據(jù)段中诱告,而在串指令中撵枢,目的操作數(shù)指明必須在現(xiàn)行附加段中。堆棧段開辟為程序執(zhí)行中所要用的堆棧區(qū)蔬啡,采用先進后出的方式訪問它诲侮。各個段寄存器指明了一個規(guī)定的現(xiàn)行段,各段寄存器不可互換使用箱蟆。程序較小時沟绪,代碼段、數(shù)據(jù)段空猜、堆棧段可放在一個段內(nèi)绽慈,即包含在64KB之內(nèi),而當程序或數(shù)據(jù)量較大時辈毯,超過了64KB坝疼,那么可以定義多個代碼段或數(shù)據(jù)段、堆棧段谆沃、附加段《坌祝現(xiàn)行段由段寄存器指明段地址,使用中可以修改段寄存器內(nèi)容唁影,指向其他段耕陷。有時為了明確起見,可在指令前加上段超越的前綴据沈,以指定操作數(shù)所在段哟沫。

4.4 指令指針寄存器IP

8086/8088CPU中設(shè)置了一個16位指令指針寄存器IP,用來存放將要執(zhí)行的下一條指令在現(xiàn)行代碼段中的偏移地址锌介。程序運行中嗜诀,它由BIU自動修改,使IP始終指向下一條將要執(zhí)行的指令的地址孔祸,因此它是用來控制指令序列的執(zhí)行流程的隆敢,是一個重要的寄存器。8086程序不能直接訪問IP崔慧,但可以通過某些指令修改IP的內(nèi)容筑公。例如,當遇到中斷指令或調(diào)用子程序指令時尊浪,8086自動調(diào)整IP的內(nèi)容匣屡,將IP中下一條將要執(zhí)行的指令地址偏移量人棧保護,待中斷程序執(zhí)行完畢或子程序返回時拇涤,可將保護的內(nèi)容從堆棧中彈出到IP捣作,使主程序繼續(xù)運行。在跳轉(zhuǎn)指令時鹅士,則將新的跳轉(zhuǎn)目標地址送入IP券躁,改變它的內(nèi)容,實現(xiàn)了程序的轉(zhuǎn)移掉盅。

4.5 標志寄存器FR

標志寄存器FR也稱程序狀態(tài)字寄存器也拜。

FR是16位寄存器坛善,其中有9位有效位用來存放狀態(tài)標志和控制標志蔓纠。狀態(tài)標志共6位,CF观游、PF永票、AF卵贱、ZF、SF和OF侣集,用于寄存程序運行的狀態(tài)信息键俱,這些標志往往用作后續(xù)指令判斷的依據(jù)∈婪郑控制標志有3位编振,IF、DF和TF臭埋,用于控制CPU的操作踪央,是人為設(shè)置的。

4.6 移位寄存器SR

在數(shù)字電路中斋泄,移位寄存器是一種在若干相同時間脈沖下工作的以觸發(fā)器為基礎(chǔ)的器件杯瞻,數(shù)據(jù)以并行或串行的方式輸入到該器件中,然后每個時間脈沖依次向左或右移動一個比特炫掐,在輸出端進行輸出魁莉。這種移位寄存器是一維的,事實上還有多維的移位寄存器募胃,即輸入旗唁、輸出的數(shù)據(jù)本身就是一些列位。實現(xiàn)這種多維移位寄存器的方法可以是將幾個具有相同位數(shù)的移位寄存器并聯(lián)起來痹束。

移位寄存器中的數(shù)據(jù)可以在移位脈沖作用下依次逐位右移或左移检疫,數(shù)據(jù)既可以并行輸入、并行輸出祷嘶,也可以串行輸入屎媳、串行輸出夺溢,還可以并行輸入、串行輸出烛谊,串行輸入风响、并行輸出,十分靈活丹禀,用途也很廣状勤。

移位寄存器不僅能寄存數(shù)據(jù),而且能在時鐘信號的作用下使其中的數(shù)據(jù)依次左移或右移双泪。

四位移位寄存器的原理圖如圖所示持搜。FF0、FF1焙矛、FF2葫盼、FF3是四個邊沿觸發(fā)的D觸發(fā)器,每個觸發(fā)器的輸出端Q接到右邊一個觸發(fā)器的輸入端D薄扁。因為從時鐘信號CP的上升沿加到觸發(fā)器上開始到輸出端新狀態(tài)穩(wěn)定地建立起來有一段延遲時間剪返,所以當時鐘信號同時加到四個觸發(fā)器上時,每個觸發(fā)器接收的都是左邊一個觸發(fā)器中原來的數(shù)據(jù)(FF0接收的輸入數(shù)據(jù)D1)邓梅。寄存器中的數(shù)據(jù)依次右移一位脱盲。

5.工作原理

在計算機及其他計算系統(tǒng)中,寄存器是一種非常重要的日缨、必不可少的數(shù)字電路苛件钱反,它通常由觸發(fā)器(D觸發(fā)器)組成,主要作用是用來暫時存放數(shù)碼或指令匣距。一個觸發(fā)器司以存放一位二進制代碼面哥,若要存放N位二進制數(shù)碼,則需用N個觸發(fā)器毅待。

寄存器應(yīng)具有接收數(shù)據(jù)尚卫、存放數(shù)據(jù)和輸出數(shù)據(jù)的功能,它由觸發(fā)器和門電路組成尸红。只有得到“存人脈沖”(又稱“存入指令”吱涉、“寫入指令”)時,寄存器才能接收數(shù)據(jù)外里;在得到“讀出”指令時怎爵,寄存器才將數(shù)據(jù)輸出。

寄存器存放數(shù)碼的方式有并行和串行兩種盅蝗。并行方式是數(shù)碼從各對應(yīng)位輸入端同時輸入到寄存器中鳖链;串行方式是數(shù)碼從一個輸入端逐位輸入到寄存器中。

寄存器讀出數(shù)碼的方式也有并行和串行兩種墩莫。在并行方式中芙委,被讀出的數(shù)碼同時出現(xiàn)在各位的輸出端上逞敷;在串行方式中,被讀出的數(shù)碼在一個輸出端逐位出現(xiàn)题山。

寄存器

6.寄存器組織

ARM微處理器共有37個32位寄存器兰粉,其中31個為通用寄存器,6個為狀態(tài)寄存器顶瞳。但是這些寄存器不能被同時訪問,具體哪些寄存器是可編程訪問的愕秫,取決于微處理器的工作狀態(tài)及具體的運行模式慨菱。但在任何時候,通用寄存器R14~R0戴甩、程序計數(shù)器PC符喝、一個或兩個狀態(tài)寄存器都是可訪問的。

ARM9處理器共有37個32位長的寄存器甜孤,這些寄存器包括:

  1. RO~R12:均為32位通用寄存器协饲,用于數(shù)據(jù)操作。但是注意:絕大多數(shù)16位Thumb指令只能訪問R0~R7缴川,而32位Thumb -2指令可以訪問所有寄存器茉稠。
  2. 堆棧指針:堆棧指針的最低兩位永遠是O,這意味著堆棸芽洌總是4字節(jié)對齊的而线。
  3. 鏈接寄存器:當呼叫一個子程序時,由R14存儲返回地址恋日。
  4. 程序計數(shù)器:指向當前的程序地址膀篮,如果修改它的值,就能改變程序的執(zhí)行流岂膳。
  5. 6個狀態(tài)寄存器(1個CPSR誓竿、5個SPSR),用以標識CPU的丁作狀態(tài)及程序的運行狀態(tài)谈截,均為32位筷屡,目前只使用了其巾的一部分。

Cortex-A8處理器有40個32位長的寄存器傻盟,多了監(jiān)控模式下的寄存器速蕊,如RO~R12、R15娘赴、CPSR通用规哲,R13_ mon、R14_mon诽表、SPSR_mon三個專用寄存器唉锌。

7.寄存器尋址

寄存器尋址就是利用寄存器中的數(shù)值作為操作數(shù)隅肥,這種尋址方式是各類微處理器經(jīng)常采用的一種方式,也是一種執(zhí)行效率較高的尋址方式袄简。

寄存器尋址是指操作數(shù)存放在CPU內(nèi)部的寄存器中腥放,指令中給出操作數(shù)所在的寄存器名。寄存器操作數(shù)可以是8位寄存器AH绿语、AL秃症、BH、BL吕粹、CH种柑、CL、DH匹耕、DL聚请,也可以是16位寄存器AX、BX稳其、CX驶赏、DX、SP既鞠、BP煤傍、SI、DI等损趋。因為寄存器尋址不需要通過總線操作訪問存儲器患久,所以指令執(zhí)行速度比較快。

寄存器尋址( Register Addressing)是以通用寄存器的內(nèi)容作為操作數(shù)的尋址方式浑槽,在該尋址方式下蒋失,操作數(shù)存放在寄存器中。寄存器尋址方式的尋址對象為:A桐玻,B篙挽,DPTR,RO~R7镊靴。其中铣卡,B僅在乘除法指令中為寄存器尋址,在其他指令中為直接尋址偏竟。A可以按寄存器尋址又可以直接尋址煮落,直接尋址時寫成ACC。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末踊谋,一起剝皮案震驚了整個濱河市蝉仇,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖轿衔,帶你破解...
    沈念sama閱讀 219,270評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件沉迹,死亡現(xiàn)場離奇詭異,居然都是意外死亡害驹,警方通過查閱死者的電腦和手機鞭呕,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,489評論 3 395
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來宛官,“玉大人葫松,你說我怎么就攤上這事≌蹋” “怎么了进宝?”我有些...
    開封第一講書人閱讀 165,630評論 0 356
  • 文/不壞的土叔 我叫張陵,是天一觀的道長枷恕。 經(jīng)常有香客問我,道長谭胚,這世上最難降的妖魔是什么徐块? 我笑而不...
    開封第一講書人閱讀 58,906評論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮灾而,結(jié)果婚禮上胡控,老公的妹妹穿的比我還像新娘。我一直安慰自己旁趟,他們只是感情好昼激,可當我...
    茶點故事閱讀 67,928評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著锡搜,像睡著了一般橙困。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上耕餐,一...
    開封第一講書人閱讀 51,718評論 1 305
  • 那天凡傅,我揣著相機與錄音,去河邊找鬼肠缔。 笑死夏跷,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的明未。 我是一名探鬼主播槽华,決...
    沈念sama閱讀 40,442評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼趟妥!你這毒婦竟也來了猫态?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,345評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎懂鸵,沒想到半個月后偏螺,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,802評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡匆光,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,984評論 3 337
  • 正文 我和宋清朗相戀三年套像,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片终息。...
    茶點故事閱讀 40,117評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡夺巩,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出周崭,到底是詐尸還是另有隱情柳譬,我是刑警寧澤,帶...
    沈念sama閱讀 35,810評論 5 346
  • 正文 年R本政府宣布续镇,位于F島的核電站美澳,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏摸航。R本人自食惡果不足惜制跟,卻給世界環(huán)境...
    茶點故事閱讀 41,462評論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望酱虎。 院中可真熱鬧雨膨,春花似錦、人聲如沸读串。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,011評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽恢暖。三九已至排监,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間胀茵,已是汗流浹背社露。 一陣腳步聲響...
    開封第一講書人閱讀 33,139評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留琼娘,地道東北人峭弟。 一個月前我還...
    沈念sama閱讀 48,377評論 3 373
  • 正文 我出身青樓,卻偏偏與公主長得像脱拼,于是被迫代替她去往敵國和親瞒瘸。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 45,060評論 2 355