{"resolved":true,"match_type":"uuid","source_type":"original_book","book_id":"38270854-596f-4a26-8183-db8c968c6020","title":"编码 隐匿在计算机软硬件背后的语言","author":null,"edition":null,"publisher":null,"year":null,"isbn":"9787121181184","requested_by":"printed_page","book":{"source_type":"original_book","book_id":"38270854-596f-4a26-8183-db8c968c6020","id":"38270854-596f-4a26-8183-db8c968c6020","uuid":"38270854-596f-4a26-8183-db8c968c6020","title":"编码 隐匿在计算机软硬件背后的语言","normalized_title":"编码隐匿在计算机软硬件背后的语言","author":null,"edition":null,"publisher":null,"year":null,"isbn":"9787121181184","isbns":["9787121181184","0123456789","6044921875","3039331000","0000000000","0000000000000"],"parsed":true,"ai_readable":true,"document_type":"book","page_count":438,"navigation_url":"https://workshop.closeclaw.top/ai/book/38270854-596f-4a26-8183-db8c968c6020","title_url":"https://workshop.closeclaw.top/ai/title/%E7%BC%96%E7%A0%81%20%E9%9A%90%E5%8C%BF%E5%9C%A8%E8%AE%A1%E7%AE%97%E6%9C%BA%E8%BD%AF%E7%A1%AC%E4%BB%B6%E8%83%8C%E5%90%8E%E7%9A%84%E8%AF%AD%E8%A8%80","fixed_page_url_template":"https://workshop.closeclaw.top/ai/book/38270854-596f-4a26-8183-db8c968c6020/page/{printed_page}","path_api_url_template":"https://workshop.closeclaw.top/api/ai/book/38270854-596f-4a26-8183-db8c968c6020/page/{printed_page}","read_url":"https://workshop.closeclaw.top/api/ai/read/38270854-596f-4a26-8183-db8c968c6020","page_url":"https://workshop.closeclaw.top/api/ai/books/38270854-596f-4a26-8183-db8c968c6020/page","search_url":"https://workshop.closeclaw.top/api/ai/books/38270854-596f-4a26-8183-db8c968c6020/search"},"page":{"printed_page":279,"pdf_page":295,"physical_index":295,"physical_index_base":0,"printed_page_status":"recognized","page_sha256":"a553ab62a9390468fa5d64192b9b8b33c7533f95c14f939729cfe2c69f0a24dc"},"chapter":"编码隐匿在计算机软硬件背后的语言","content":"8080是一个8位的微处理器，可以一次从存储器读取或向存储器写入8位数据。该芯片还包括标记为 $\\mathbf { D } _ { 0 } \\sim \\mathbf { D } _ { 7 }$ 的8个信号，这些信号是芯片仅有的几个既可以用做输入又可以用做输出的信号。当微处理器从存储器中读取一个字节时，这些管脚的功能是输入；当微处理器向存储器写入一个字节时，其功能又变成了输出。\n\n芯片的其余10个管脚是控制信号（control signals)。例如，RESET（复位）输入用于控制微处理器的复位。输出信号WR的功能是指明微处理器需要向 RAM中写入数据(WR信号对应于RAM阵列的写输入)。此外，当芯片读取指令时，在某些时刻一些控制信号会出现在 $\\mathrm { D } _ { 0 } \\sim \\mathrm { D } _ { 7 }$ 管脚处。使用8080 芯片构建的计算机系统通常使用8228系统控制芯片来锁存附加的控制信号。本章在后面将会讲述一些控制信号。但8080的控制信号是极其复杂的，因此，除非你准备用该芯片搭建一台计算机，否则最好不要在这些控制信号上过多花费时间。\n\n假设8080微处理器连接了一个64KB的存储器，这样我们就能独立地读写数据而不依赖于微处理器。\n\n8080芯片复位后，它把锁存在存储器0000h地址处的字节读入微处理器，通过在地址信号端 ${ \\bf A } _ { 0 } \\sim { \\bf A } _ { 1 5 }$ 输出16个0实现该过程。它读取的字节必须是8080指令，读取该字节的过程被称为取指令（instruction fetch)。\n\n在第17章设计的计算机中，所有的指令（除了HLT指令）都是3个字节长，包括1字节的操作码和2字节的地址。在8080中，指令的长度可以是1字节、2字节，或者3字节。有些指令使8080从存储器的一个特定地址读取字节到微处理器，有些指令使8080将一个字节从微处理器写入存储器的特定地址；还有些指令使8080在其内部执行而不需要访问RAM。8080执行完第一条指令后，接着从存储器读取第二条指令，并依此类推。这些指令组合在一起构成了计算机程序，可以用来做一些很有趣的事情。\n\n当 8080 以最高速度 2 MHz 运行时，每个时钟周期是 500ns（1 ÷ 2,000,000 =0.000000500s)。第17章中的计算机的所有指令都需要4个时钟周期，8080的每条指令需要4\\~18个时钟周期，这就意味着每条指令的执行时间为 $2 \\sim 9 \\mu \\mathrm { s }$ o\n\n19 两种典型的微处理器\n\n279","previous_page":278,"next_page":280}