首页 usb 结构体

usb 结构体

举报
开通vip

usb 结构体usb 结构体 struct usb_device_id来自include/linux/mod_devicetable.h struct usb_device_id { 98 /* which fields to match against? */ 99 __u16 match_flags; 100 101 /* Used for product specific matches; range is inclusive */ 102 __u16 idVendor; 103 __u16 idProdu...

usb 结构体
usb 结构体 struct usb_device_id来自include/linux/mod_devicetable.h struct usb_device_id { 98 /* which fields to match against? */ 99 __u16 match_flags; 100 101 /* Used for product specific matches; range is inclusive */ 102 __u16 idVendor; 103 __u16 idProduct; 104 __u16 bcdDevice_lo; 105 __u16 bcdDevice_hi; 106 107 /* Used for device class matches */ 108 __u8 bDeviceClass; 109 __u8 bDeviceSubClass; 110 __u8 bDeviceProtocol; 111 112 /* Used for interface class matches */ 113 __u8 bInterfaceClass; 114 __u8 bInterfaceSubClass; 115 __u8 bInterfaceProtocol; 116 117 /* not matched against */ 118 kernel_ulong_t driver_info; 119 }; 上节我们注意到id_index=id-storage_usb_ids,id我们知道,storage_probe函数的两个形 参之一,而 storage_usb_ids,不是别人,正是我们曾经赋给usb_storage_driver的成员id_table的值. 忘记了 id_table的可以回去看.它实际上就是一张表格,告诉全世界我这个driver支持怎样的一些 设 备.storage_usb_ids同样来自drivers/usb/storage/usb.c中, 111 /* The entries in this table, except for final ones here 112 * (USB_MASS_STORAGE_CLASS and the empty entry), correspond, 113 * line for line with the entries of us_unsuaul_dev_list[]. 114 */ 115 116 #define UNUSUAL_DEV(id_vendor, id_product, bcdDeviceMin, bcdDeviceMax, \ 117 vendorName, productName,useProtocol, useTransport, \ 118 initFunction, flags) \ 119 { USB_DEVICE_VER(id_vendor, id_product, bcdDeviceMin,bcdDeviceMax) } 120 121 static struct usb_device_id storage_usb_ids [] = { 122 123 # include "unusual_devs.h" 124 #undef UNUSUAL_DEV 125 /* Control/Bulk transport for all SubClass values */ 126 { USB_INTERFACE_INFO(USB_CLASS_MASS_STORAGE, US_SC_RBC, US_PR_CB) }, 127 { USB_INTERFACE_INFO(USB_CLASS_MASS_STORAGE, US_SC_8020, US_PR_CB) }, USB_INTERFACE_INFO这个咚咚,很显 然这是一个宏,来自include/linux/usb.h, 482 #define USB_INTERFACE_INFO(cl,sc,pr) \ 483 .match_flags = USB_DEVICE_ID_MATCH_INT_INFO, .bInterfaceClass = (cl), .bInterfaceSubClass = (sc), .bInterfaceProtocol = (pr) 每一个USB_INTERFACE_INFO就是构造一个struct usb_device_id的结构体变量,回顾一下我 们之前 给出的struct usb_device_id的定义,这里实际上就是为其中的四个元素赋了值,它们是 match_flags,bInterfaceClass,bInterfaceSubClass,bInterfaceProtocol. match_flag,它又是表示什么意思?USB_INTERFACE_INFO这个宏貌似把所有的设 备的match_flag都给设成了USB_DEVICE_ID_MATCH_INT_INFO,这是为啥?这个宏来自 include/linux/usb.h, 435 #define USB_DEVICE_ID_MATCH_INT_INFO \ 436 (USB_DEVICE_ID_MATCH_INT_CLASS | USB_DEVICE_ID_MATCH_INT_SUBCLASS | USB_DEVICE_ID_MATCH_INT_PROTOCOL) match_flag这个咚咚是给usb core去用的,usb core负责给设备寻找适合她的driver,负责 给driver 寻找适合他的device,它所比较的就是struct usb_device_id的变量,而struct usb_device_id结构体 中有许多成员,那么是不是一定要把每一个成员都给比较一下呢,其实没有必要那么细,差不 多就行了,比如 咱们这里,就是告诉usb core,你只要比较 bInterfaceClass,bInterfaceSubClass,bInterfaceProtocol 即可.include/linux/mod_devicetable.h中针对struct usb_device_id中的每一个要比较 的项定义了 一个宏: 32 121 /* Some useful macros to use to create struct usb_device_id */ 122 #define USB_DEVICE_ID_MATCH_VENDOR 0x0001 123 #define USB_DEVICE_ID_MATCH_PRODUCT 0x0002 124 #define USB_DEVICE_ID_MATCH_DEV_LO 0x0004 125 #define USB_DEVICE_ID_MATCH_DEV_HI 0x0008 126 #define USB_DEVICE_ID_MATCH_DEV_CLASS 0x0010 127 #define USB_DEVICE_ID_MATCH_DEV_SUBCLASS 0x0020 128 #define USB_DEVICE_ID_MATCH_DEV_PROTOCOL 0x0040 129 #define USB_DEVICE_ID_MATCH_INT_CLASS 0x0080 130 #define USB_DEVICE_ID_MATCH_INT_SUBCLASS 0x0100 131 #define USB_DEVICE_ID_MATCH_INT_PROTOCOL 0x0200 回去对比一下struct usb_device_id就知道这些宏是什么意思了. 472行, struct us_unusual_dev,这个结构体是第一次出现,她定义于 drivers/usb/storage/usb.h中, 55 /* 56 * Unusual device list definitions 57 */ 58 59 struct us_unusual_dev { 60 const char* vendorName; 61 const char* productName; 62 __u8 useProtocol; 63 __u8 useTransport; 64 int (*initFunction)(struct us_data *); 65 unsigned int flags; 66 }; us_unusal_dev_list是一个数组,定义于drivers/usb/storage/usb.c: static struct us_unusual_dev us_unusual_dev_list[] = { #undef UNUSUAL_DEV 169 #define UNUSUAL_DEV(idVendor, idProduct, bcdDeviceMin, bcdDeviceMax, \ 170 vendor_name, product_name, use_protocol, use_transport, \ 171 init_function, Flags) \ 172 { \ 173 .vendorName = vendor_name, \ 174 .productName = product_name, \ 175 .useProtocol = use_protocol, \ 176 .useTransport = use_transport, \ 177 .initFunction = init_function, \ 178 .flags = Flags, \ 179 } 180 182 # include "unusual_devs.h" 183 # undef UNUSUAL_DEV 184 /* Control/Bulk transport for all SubClass values */ 185 { .useProtocol = US_SC_RBC, 186 .useTransport = US_PR_CB}, 187 { .useProtocol = US_SC_8020, 188 .useTransport = US_PR_CB}, . . . struct usb_interface.它定义于 include/linux/usb.h: struct usb_interface { 116 /* array of alternate settings for this interface, 117 * stored in no particular order */ 118 struct usb_host_interface *altsetting; 119 120 struct usb_host_interface *cur_altsetting; /* the currently 121 * active alternate setting */ 122 unsigned num_altsetting; /* number of alternate settings */ 123 124 int minor; /* minor number this interface is bound to */ 125 enum usb_interface_condition condition; /* state of binding */ 126 struct device dev; /* interface specific device info */ 127 struct class_device *class_dev; 128 }; 129 #define to_usb_interface(d) container_of(d, struct usb_interface, dev) 130 #define interface_to_usbdev(intf) \ 131 container_of(intf->dev.parent, struct usb_device, dev) 于include/linux/usb.h: struct usb_host_interface { 53 struct usb_interface_descriptor desc; 54 55 /* array of desc.bNumEndpoint endpoints associated with this 56 * interface setting. these will be in no particular order. 57 */ 58 struct usb_host_endpoint *endpoint; 59 60 unsigned char *extra; /* Extra descriptors */ 61 int extralen; 35 62 }; include/linux/usb_ch9.h.(这里取名为"ch9"是因为这个文件很多东西对应于usb spec 2.0中的第九章,chapter 9.): 242 /* USB_DT_INTERFACE: Interface descriptor */ 243 struct usb_interface_descriptor { 244 __u8 bLength; 245 __u8 bDescriptorType; 246 247 __u8 bInterfaceNumber; 248 __u8 bAlternateSetting; 249 __u8 bNumEndpoints; 250 __u8 bInterfaceClass; 251 __u8 bInterfaceSubClass; 252 __u8 bInterfaceProtocol; 253 __u8 iInterface; 254 } __attribute__ ((packed)); struct usb_host_endpoint的定义,来自include/linux/usb.h: 43 /* host-side wrapper for parsed endpoint descriptors */ 44 struct usb_host_endpoint { 45 struct usb_endpoint_descriptor desc; 46 47 unsigned char *extra; /* Extra descriptors */ 48 int extralen; 49 }; struct usb_endpoint_descriptor的结构体指针.顾名思义,这就是对应endpoint的 描述符的.其定义来自于include/linux/usb_ch9.h: 260 /* USB_DT_ENDPOINT: Endpoint descriptor */ 261 struct usb_endpoint_descriptor { 262 __u8 bLength; 263 __u8 bDescriptorType; 264 265 __u8 bEndpointAddress; 266 __u8 bmAttributes; 267 __u16 wMaxPacketSize; 268 __u8 bInterval; 269 270 // NOTE: these two are _only_ in audio endpoints. 271 // use USB_DT_ENDPOINT*_SIZE in bLength, not sizeof. 272 __u8 bRefresh; 273 __u8 bSynchAddress; 274 } __attribute__ ((packed)); struct usb_endpoint_descriptor,它的成员中, bmAttributes表示属性,总共8位,其中bit1 和bit0共同称为Transfer Type,即传输类型,即00表示控制,01表示等时,10表示批量,11 表示中断.而 719行我们看到, USB_ENDPOINT_XFERTYPE_MASK这个宏定义于include/linux/usb_ch9.h中: 286 #define USB_ENDPOINT_XFERTYPE_MASK 0x03 /* in bmAttributes */ 287 #define USB_ENDPOINT_XFER_CONTROL 0 288 #define USB_ENDPOINT_XFER_ISOC 1 289 #define USB_ENDPOINT_XFER_BULK 2 290 #define USB_ENDPOINT_XFER_INT 3 USB_DIR_IN仍然来自 include/linux/usb_ch9.h * USB directions 57 27 * 28 * This bit flag is used in endpoint descriptors' bEndpointAddress field. 29 * It's also one of three fields in control requests bRequestType. 30 */ 31 #define USB_DIR_OUT 0 /* to device */ 32 #define USB_DIR_IN 0x80 /* to host */ 68页 include/linux/usb.h 779 struct urb 780 { 781 /* private, usb core and host controller only fields in the urb */ 782 struct kref kref; /* reference count of the URB */ 783 spinlock_t lock; /* lock for the URB */ 784 void *hcpriv; /* private data for host controller */ 785 struct list_head urb_list; /* list pointer to all active urbs */ 786 int bandwidth; /* bandwidth for INT/ISO request */ 787 atomic_t use_count; /* concurrent submissions counter */ 788 u8 reject; /* submissions will fail */ 789 790 /* public, documented fields in the urb that can be used by drivers */ 791 struct usb_device *dev; /* (in) pointer to associated device */ 792 unsigned int pipe; /* (in) pipe information */ 793 int status; /* (return) non-ISO status */ 794 unsigned int transfer_flags; /* (in) URB_SHORT_NOT_OK | ...*/ 795 void *transfer_buffer; /* (in) associated data buffer */ 796 dma_addr_t transfer_dma; /* (in) dma addr for transfer_buffer */ 797 int transfer_buffer_length; /* (in) data buffer length */ 798 int actual_length; /* (return) actual transfer length */ 799 unsigned char *setup_packet; /* (in) setup packet (control only) */ 800 dma_addr_t setup_dma; /* (in) dma addr for setup_packet */ 801 int start_frame; /* (modify) start frame (ISO) */ 802 int number_of_packets; /* (in) number of ISO packets */ 803 int interval; /* (modify) transfer interval (INT/ISO) */ 804 int error_count; /* (return) number of ISO errors */ 805 void *context; /* (in) context for completion */ 806 usb_complete_t complete; /* (in) completion routine */ 807 struct usb_iso_packet_descriptor iso_frame_desc[0]; /* (in) ISO ONLY */ 808 }; drivers/usb/storage/usb.h: 105 /* we allocate one of these for every device that we remember */ 106 struct us_data { 107 /* The device we're working with 108 * It's important to note: 109 * (o) you must hold dev_semaphore to change pusb_dev 110 */ 111 struct semaphore dev_semaphore; /* protect pusb_dev */ 112 struct usb_device *pusb_dev; /* this usb_device */ 113 struct usb_interface *pusb_intf; /* this interface */ 114 struct us_unusual_dev *unusual_dev; /* device-filter entry */ 115 unsigned long flags; /* from filter initially */ 116 unsigned int send_bulk_pipe; /* cached pipe values */ 117 unsigned int recv_bulk_pipe; 118 unsigned int send_ctrl_pipe; 119 unsigned int recv_ctrl_pipe; 120 unsigned int recv_intr_pipe; 121 122 /* information about the device */ 123 char vendor[USB_STOR_STRING_LEN]; 124 char product[USB_STOR_STRING_LEN]; 125 char serial[USB_STOR_STRING_LEN]; 126 char *transport_name; 127 char *protocol_name; 128 u8 subclass; 129 u8 protocol; 130 u8 max_lun; 131 132 u8 ifnum; /* interface number */ 133 u8 ep_bInterval; /* interrupt interval */ 134 135 /* function pointers for this device */ 136 trans_cmnd transport; /* transport function */ 137 trans_reset transport_reset; /* transport device reset */ 138 proto_cmnd proto_handler; /* protocol handler */ 139 140 /* SCSI interfaces */ 141 struct Scsi_Host *host; /* our dummy host data */ 142 struct scsi_cmnd *srb; /* current srb */ 143 144 /* thread information */ 145 int pid; /* control thread */ 146 147 /* control and bulk communications data */ 148 struct urb *current_urb; /* USB requests */ 149 struct usb_ctrlrequest *cr; /* control requests */ 150 struct usb_sg_request current_sg; /* scatter-gather req. */ 151 unsigned char *iobuf; /* I/O buffer */ 152 dma_addr_t cr_dma; /* buffer DMA addresses */ 153 dma_addr_t iobuf_dma; 154 155 /* mutual exclusion and synchronization structures */ 156 struct semaphore sema; /* to sleep thread on */ 157 struct completion notify; /* thread begin/end */ 158 wait_queue_head_t dev_reset_wait; /* wait during reset */ 159 wait_queue_head_t scsi_scan_wait; /* wait before scanning */ 160 struct completion scsi_scan_done; /* scan thread end */ 161 162 /* subdriver information */ 163 void *extra; /* Any extra data */ 164 extra_data_destructor extra_destructor;/* extra data destructor */ 165 }; struct usb_ctrlrequest结构指针, usb规范规定了一个控制请求的格式为一个8个字节的 数据包, 而struct usb_ctrlrequest正是专门为此而准备的8个字节的一个变量,所以控制传输中总 会用到她.她的 定义在include/linux/usb_ch9.h中: 103 struct usb_ctrlrequest { 104 __u8 bRequestType; 105 __u8 bRequest; 106 __le16 wValue; 107 __le16 wIndex; 77 108 __le16 wLength; 109 } __attribute__ ((packed)); 需要说明一点,在usb spec中,不叫cr,而叫setup packet,在struct urb里边就有这么一个名字 一样的成员, 在usb mass storage bulk only transport 协议 离婚协议模板下载合伙人协议 下载渠道分销协议免费下载敬业协议下载授课协议下载 里面,规定的很清楚,要发送GET MAX LUN请求, 必须把bmRequestType设置为device to host,class,interface,同时把bRequest设置为254(FEh), 即咱们这里的0xfe,而wValue设置为0,wIndex设置为接口的编号,最后wLength设置为1. byte0: bmRequestType,注意,在刚才咱们代码中数据结构struct ctrlrequest里边是写的 bRequestType,但是她们对应的是相同的冬冬.而之所以usb协议里写成bmRequestType,是因为她实 际上又是一个位图(m表示map),也就是说,尽管她只有1个byte,但是她仍然是当作8位来用.她的8位 的含义是: D7: 控制传输数据传输的方向,0表示方向为主机到设备,1表示方向为设备到主机.(有时控制传 输除了发命令阶段以外,可能还有数据传输阶段,此处表示的是在数据传输那个阶段的传输方向.) D6...5: 请求的类型,0称为 标准 excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载 类型(Standard),1称为Class,2称为Vendor,3则是保留的, 不能使用. D4...0: 接收者,0表示设备,1表示接口,2表示端点,3表示其它,4...31都是保留的,不能使用. 定义于include/linux/usb.h static inline void usb_fill_control_urb (struct urb *urb, struct usb_device *dev, unsigned int pipe, unsigned char *setup_packet, void *transfer_buffer, int buffer_length, usb_complete_t complete, void *context) { spin_lock_init(&urb->lock); urb->dev = dev; urb->pipe = pipe; urb->setup_packet = setup_packet; urb->transfer_buffer = transfer_buffer; urb->transfer_buffer_length = buffer_length; urb->complete = complete; urb->context = context; }文 - 汉语汉字 编辑词条 文,wen,从玄从爻。天地万物的信息产生出来的现象、纹路、轨迹,描绘出了阴阳二气在事物中的运行轨迹和原理。 故文即为符。上古之时,符文一体。 古者伏羲氏之王天下也,始画八卦,造书契,以代结绳(爻)之政,由是文籍生焉。--《尚书序》 依类象形,故谓之文。其后形声相益,即谓之字。--《说文》序》 仓颉造书,形立谓之文,声具谓之字。--《古今通论》 "是汉字的一个部首。本义:花纹;纹理。 (1) 象形。甲骨文此字象纹理纵横交错形。"文 (2) 同本义 [figure;veins] 文,英语念为:text、article等,从字面意思上就可以理解为文章、文字,与古今中外的各个文学著作中出现的各种文字字形密不可分。古有甲骨文、金文、小篆等,今有宋体、楷体等,都在这一方面突出了"文"的重要性。古今中外,人们对于"文"都有自己不同的认知,从大的方面来讲,它可以用于表示一个民族的文化历史,从小的方面来说它可用于用于表示单独的一个"文"字,可用于表示一段话,也可用于人物的姓氏。 折叠编辑本段基本字义 1(事物错综所造成的纹理或形象:灿若,锦。 2.刺画花纹:,身。 3( 记录 混凝土 养护记录下载土方回填监理旁站记录免费下载集备记录下载集备记录下载集备记录下载 语言的符号:,字。,盲。以,害辞。 4(用文字记下来以及与之有关的:,凭。,艺。,体。,典。,苑。,献(指有历史价值和参考价值的图书资料)。,采(a(文辞、文艺方面的才华;b(错杂艳丽的色彩)。 5(人类劳动成果的总结:,化。,物。 6(自然界的某些现象:天,。水,。 7(旧时指礼节仪式:虚,。繁,缛节(过多的礼节仪式)。 8(文华辞采,与“质”、“情”相对:,质彬彬。 9(温和:,火。,静。,雅。 10(指非军事的:,职。,治武功(指礼乐教化和军事功绩)。 11(指以古汉语为基础的书面语:552,言。,白间杂。 12(专指社会科学:,科。 13(掩饰:,过饰非。 14(量词,指旧时小铜钱:一,不名。 15(姓。 16( 皇帝谥号,经纬天地曰文;道德博闻曰文;慈惠爱民曰文;愍民惠礼曰文;赐民爵位曰文;勤学好问曰文;博闻多见曰文;忠信接礼曰文;能定典礼曰文;经邦定誉曰文;敏而好学曰文;施而中礼曰文;修德来远曰文;刚柔相济曰文;修治班制曰文;德美才秀曰文;万邦为宪、帝德运广曰文;坚强不暴曰文;徽柔懿恭曰文;圣谟丕显曰文;化成天下曰文;纯穆不已曰文;克嗣徽音曰文;敬直慈惠曰文;与贤同升曰文;绍修圣绪曰文;声教四讫曰文。如汉文帝。 折叠编辑本段字源字形 字源演变与字形比较 折叠编辑本段详细字义 〈名〉 1(右图是 “文”字的甲骨文图片,资料来源:徐无闻主编:《甲金篆隶大字典》,四川辞书出版社。1991年7月第一版。 “文”字的甲骨文字绘画的像一个正面的“大人”,寓意“大象有形”、“象形”;特别放大了胸部,并在胸部画了“心”,含义是“外界客体在心里面的整体影像、整体写真、整体素描、整体速写”。 许慎《说文解字》把“文”解释为“错画也”,意思是“对事物形象进行整体素描,笔画交错,相联相络,不可解构”,这与他说的独体为文、合体为字的话的意思是一致的。“说文解字”这个书名就表示了“文”只能“说”,而“字”则可“解”的意思。“文”是客观事物外在形象的速写,是人类进一步了解事物内在性质的基础,所以它是“字”的父母,“字”是“文”的孩子。“文”生“字”举例(以“哲”为例):先对人手摩画,其文为“手”;又对斧子摩画,其文为“斤”。以手、斤为父母,结合、生子,其子就是“折”(手和斤各代表父母的基因)。这个“折”就是许慎所谓的“字”。“字”从宀从子,“宀”表示“独立的房子”,子在其中,有“自立门户”的意思。故“字”还能与“文”或其他“字”结合,生出新“字”来。在本例,作为字的“折”与作为文的“口”结合,就生出了新的字“哲”。 2( 同本义 [figure;veins] 文,错画也。象交文。今字作纹。——东汉?许慎《说文》 五章以奉五色。——春秋?左丘明《左传?昭公二十五年》。注:“青与赤谓之文,赤与白谓之章,白与黑谓之黼,黑与青谓之黻。” 美于黼黼文章。——《荀子?非相》 茵席雕文。——《韩非子?十过》 织文鸟章,白旆央央。——《诗?小雅?六月》 斑文小鱼。——明? 刘基《诚意伯刘文成公文集》 3(又如:文驾(彩车);文斑(杂色的斑纹);文旆(有文彩的旗帜);文绣(绣有彩色花纹的丝织品;刺花图案);文织(有彩色花纹的丝织品);文鳞(鱼鳞形花纹)。 4(字,文字(“文”,在先秦时期就有文字的意思,“字”,到了秦朝才有此意。分别讲,“文”指独体字;“字”指合体字。笼统地说,都泛指文字。) [character] 饰以篆文。——南朝宋?范晔《后汉书?张衡传》 分文析字。——东汉?班固《汉书?刘歆传》 夫文,止戈为武。——《左传?宣公十二年》 距洞数百步,有碑仆道,其文漫灭。——王安石《游褒禅山记》 文曰“天启壬戌秋日”。——明? 魏学洢《核舟记》 文曰“初平山尺”。 5(又如:甲骨文;金文;汉文;英文;文迹(文字所记载的事迹);文书爻(有关文字、文凭之类的卦象);文异(文字相异);文轨(文字和车轨);文狱(文字狱);文钱(钱。因钱有文字,故称);文状(字据,军令状);文引(通行证;路凭);文定(定婚)。 6(文章(遣造的词句叫做“文”,结构段落叫做 “章”。) [literary composition] 故说诗者不以文害辞。——《孟子?万章上》 好古文。——唐? 韩愈《师说》 属予作文以记之。——宋? 范仲淹《岳阳楼记》 能述以文。——宋? 欧阳修《醉翁亭记》 摘其诗文。——清? 纪昀《阅微草堂笔记》 7(又如:文价(文章的声誉);文魔(书呆子);文会(旧时读书人为了准备应试,在一起写文章、互相观摩的集会);文移(旧时官府文书的代称);文雄(擅长写文章的大作家);文意(文章的旨趣);文义(文章的义理);文情(文章的词句和情思);本文(所指的这篇文章);作文(写文章;学习练习所写的文章);文魁(文章魁首);文价(文章的声价);文什(文章与诗篇)。 8(美德;文德 [virtue] 圣云继之神,神乃用文治。——杜牧《感怀诗一首》 9(又如:文丈(对才高德韶的老者的敬称);文母(文德之母);文武(文德与武功);文命(文德教命);文惠(文德恩惠);文德(写文章的道德);文薄(谓文德浅薄);文昭(文德昭著)。 10.文才;才华。亦谓有文才,有才华 [literary talent] 而文采不表于后世也。——汉? 司马迁《报任安书》 11(又如:文业(才学);文英(文才出众的人);文采风流(横溢的才华与潇洒的风度);文郎(有才华的青少年);文彦(有文才德行的人);文通残锦(比喻剩下不多的才华)。 12(文献,经典;韵文 [document;classics;verse] 儒以文乱法。——《韩非子?五蠹》 言必遵修旧文而不穿凿。——《说文解字?叙》 13(辞词句。亦指文字记载 [writings;record]。如:文几(旧时书信中开头常用的套语。意为将书信呈献于几前);文倒(文句颠倒);文过其实(文辞浮夸,不切实际);文义(文辞);文辞(言词动听的辞令);文绣(辞藻华丽)。 14(自然界的某些现象 [natural phenomenon] 经纬天地曰文。——《左传?昭公二十八年》 15(又如:天文;地文;水文;文象(日月星辰变化的迹象);文曜(指日月星辰;文星);文昌(星座名)。 16(文治;文事;文职。与“武”相对。 [achievements in culture and education;civilian post] 文能取胜。——《史记?平原君虞卿列传》 文不能取胜。 文武并用。——唐? 魏征《谏太宗十思疏》 精神折冲于千里,文武为宪于万邦。――明《袁可立晋秩兵部右侍郎诰》 17(又如:文臣,文吏(文职官吏);文席(教书先生的几席);文品(文官的品阶);文帅(文职官员出任或兼领统帅);文烈(文治显赫);文员(文职吏员);文阶(文职官阶);文道(文治之道);文业(文事);文僚(文职官吏)。 18(法令条文 [articles of decree] 而刀笔吏专深文巧诋,陷人于罪。——《史记?汲黯列传》 19(又如:文劾(根据律令弹劾);文法吏(通晓法令、执法严峻的官吏);文丈(规矩; 制度 关于办公室下班关闭电源制度矿山事故隐患举报和奖励制度制度下载人事管理制度doc盘点制度下载 );文移(官府文书);文牓(布告;文告);文宪(礼法;法制)。 20(文言。古代散文文体之一;别于白话的古汉语书面语 [literary language]。如:半文半白;文语;文白(文言文和白话文)。 21(文教;礼节仪式 [rites] 则修文德。——《论语?季氏》 22(又如:文丈(崇尚礼文仪节);文俗(拘守礼法而安于习俗);文致(指礼乐);文貌(礼文仪节);文绪(文教礼乐之事);文仪(礼节仪式) 23(指表现形式;外表 [form;appearance]。如:文服(表面服从);文榜(告示、布告之类); 文诰(诰令) 24(指鼓乐,泛指曲调 [music;tune]。如:文曲(指乐曲);文始(舞乐名) 25(谥号,谥法:勤学好问叫文 [study deligently] 何以谓之文。——《论语》 是以谓之文。 26(姓 〈动〉 1(在肌肤上刺画花纹或图案 [tatto (the skin)] 被发文身。——《礼记?王制》。注:“谓其肌,以丹青涅之。” 文绣有恒。——《礼记?月令》 2(又如:文笔匠(在人身上刺花的艺人);文身断发(古代荆楚、南越一带的习俗。身刺花纹,截短头发,以为可避水中蛟龙的伤害。后常以指落后地区的民俗);文木(刻镂以文采之木) 3(修饰;文饰 [cover up] 身将隐,焉用文之?——《左传?僖公二十三年》 饰邪说,文奸言,以枭乱天下。——《荀子?非十二子》 4(又如:文过饰非;文致(粉饰;掩饰);文冢(埋葬文稿之处) 5(装饰 [decorate] 舍其文轩。——《墨子?公输》 此犹文奸。 文车二驷。——明? 归有光《项脊轩志》 文马四百匹。——《史记?宋世家》 若将比予文木邪。——《庄子?人间世》 6(又如:文巧(文饰巧辩);文竿(以翠羽为饰之竿);文舫(装饰华丽的游艇);文饰(彩饰); 文榭(饰以彩画的台榭);文舟,文艘(装饰华丽的船);文剑(装饰华丽的剑);文舆(饰以彩绘的车) 7(撰写文章 [write]。如:文匠(写文章的大家);文祸(因写文章而招来的灾祸);文雄,文杰(指文豪) 〈形〉 1(有文采,华丽。与“质”或“野”相对 [magnificent;gorgeous] 其旨远,其辞文。——《易?系辞下》 晋公子广而俭,文而有礼。——《左传?僖公二十三年》 2(又如:文巧(华丽奇巧);文朴(文华与质朴);文服(华美的衣服);文砌(华美的石阶);文背(不文雅,粗俗);文轩(华美的车子);文质(文华与质朴) 3.柔和,不猛烈 [mild;gentle]。如:文烈(指火候温猛) 4(美,善 [fine;good]。如:文徽(华美);文鸳(即鸳鸯。以其羽毛华美,故称);文衣(华 美的服装) 5(通“紊”。紊乱的 [disordered] 惇宗将礼,称秩元祀,咸秩无文。——《书?洛诰》 天子祭天下名山大川,怀柔百神,咸秩无文。——《汉书?郊祀志上》 王者报功,以次秩之,无有文也。——庆劭《风俗通义?山泽》 〈量〉 1(用于旧时的铜钱。如:一文钱 2(用于计算纺织物 五扶为一首,五首成一文。——《后汉书》
本文档为【usb 结构体】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_314871
暂无简介~
格式:doc
大小:59KB
软件:Word
页数:25
分类:
上传时间:2017-10-17
浏览量:17