当前位置: 首页 > news >正文

0292-Nand-实现基础逻辑门(二)

环境

  • Time 2023-07-06

前言

说明

参考:https://www.nand2tetris.org/

目标

接上一节,通过基础的逻辑门实现 Not16、And16、Or16、Mux16 四个基础门。

Not16

/*** 16-bit Not:* for i=0..15: out[i] = not in[i]*/
/** Sets out[x] = Not(in[x]) */
CHIP Not16 {IN in[16];OUT out[16];PARTS:// Put your code here:Not(in = in[0], out = out[0]);Not(in = in[1], out = out[1]);Not(in = in[2], out = out[2]);Not(in = in[3], out = out[3]);Not(in = in[4], out = out[4]);Not(in = in[5], out = out[5]);Not(in = in[6], out = out[6]);Not(in = in[7], out = out[7]);Not(in = in[8], out = out[8]);Not(in = in[9], out = out[9]);Not(in = in[10], out = out[10]);Not(in = in[11], out = out[11]);Not(in = in[12], out = out[12]);Not(in = in[13], out = out[13]);Not(in = in[14], out = out[14]);Not(in = in[15], out = out[15]);
}

And16

/*** 16-bit bitwise And:* for i = 0..15: out[i] = (a[i] and b[i])*/
/** Sets out[x] = And(a = [x], b = [x]) */
CHIP And16 {IN a[16], b[16];OUT out[16];PARTS:// Put your code here:And(a = a[0], b = b[0], out = out[0]);And(a = a[1], b = b[1], out = out[1]);And(a = a[2], b = b[2], out = out[2]);And(a = a[3], b = b[3], out = out[3]);And(a = a[4], b = b[4], out = out[4]);And(a = a[5], b = b[5], out = out[5]);And(a = a[6], b = b[6], out = out[6]);And(a = a[7], b = b[7], out = out[7]);And(a = a[8], b = b[8], out = out[8]);And(a = a[9], b = b[9], out = out[9]);And(a = a[10], b = b[10], out = out[10]);And(a = a[11], b = b[11], out = out[11]);And(a = a[12], b = b[12], out = out[12]);And(a = a[13], b = b[13], out = out[13]);And(a = a[14], b = b[14], out = out[14]);And(a = a[15], b = b[15], out = out[15]);
}

Or16

/*** 16-bit bitwise Or:* for i = 0..15 out[i] = (a[i] or b[i])*/
/** Sets out[x] = Or(a = [x], b = [x]) */
CHIP Or16 {IN a[16], b[16];OUT out[16];PARTS:// Put your code here:Or(a = a[0], b = b[0], out = out[0]);Or(a = a[1], b = b[1], out = out[1]);Or(a = a[2], b = b[2], out = out[2]);Or(a = a[3], b = b[3], out = out[3]);Or(a = a[4], b = b[4], out = out[4]);Or(a = a[5], b = b[5], out = out[5]);Or(a = a[6], b = b[6], out = out[6]);Or(a = a[7], b = b[7], out = out[7]);Or(a = a[8], b = b[8], out = out[8]);Or(a = a[9], b = b[9], out = out[9]);Or(a = a[10], b = b[10], out = out[10]);Or(a = a[11], b = b[11], out = out[11]);Or(a = a[12], b = b[12], out = out[12]);Or(a = a[13], b = b[13], out = out[13]);Or(a = a[14], b = b[14], out = out[14]);Or(a = a[15], b = b[15], out = out[15]);
}

Mux16

/*** 16-bit multiplexor:* for i = 0..15 out[i] = a[i] if sel == 0*                        b[i] if sel == 1*/
/** Sets out[x] = Mux(a = [x], b = [x], sel = sel) */
CHIP Mux16 {IN a[16], b[16], sel;OUT out[16];PARTS:// Put your code here:Mux(a = a[0], b = b[0], sel = sel, out = out[0]);Mux(a = a[1], b = b[1], sel = sel, out = out[1]);Mux(a = a[2], b = b[2], sel = sel, out = out[2]);Mux(a = a[3], b = b[3], sel = sel, out = out[3]);Mux(a = a[4], b = b[4], sel = sel, out = out[4]);Mux(a = a[5], b = b[5], sel = sel, out = out[5]);Mux(a = a[6], b = b[6], sel = sel, out = out[6]);Mux(a = a[7], b = b[7], sel = sel, out = out[7]);Mux(a = a[8], b = b[8], sel = sel, out = out[8]);Mux(a = a[9], b = b[9], sel = sel, out = out[9]);Mux(a = a[10], b = b[10], sel = sel, out = out[10]);Mux(a = a[11], b = b[11], sel = sel, out = out[11]);Mux(a = a[12], b = b[12], sel = sel, out = out[12]);Mux(a = a[13], b = b[13], sel = sel, out = out[13]);Mux(a = a[14], b = b[14], sel = sel, out = out[14]);Mux(a = a[15], b = b[15], sel = sel, out = out[15]);
}

总结

使用基础的逻辑门,实现了多位逻辑门。

附录

http://www.jsqmd.com/news/26780/

相关文章:

  • 单点登录SSO是怎么实现的?
  • 赋能智慧货运:视频汇聚平台EasyCVR打造货运汽车安全互联网视频监控与管理方案
  • 2025年上海房产继承律师权威推荐榜单:继承律师/离婚律师/婚姻律师事务所精选
  • 【SPIE出版、往届已EI检索】第二届遥感技术与图像处理国际学术会议(RSTIP 2025)
  • autotiny下载_v3.0.0.2
  • 2025 年井盖篦子最新推荐榜,技术实力与市场口碑深度解析铸铁套/树围/球墨铸铁单/溢流井/雨水井盖篦子公司推荐
  • Python嵌套_多条件判断 _ 对象今天会生气吗 II
  • 解析视频融合平台EasyCVR的分析平台技术如何成为“全域视频管理中台”
  • flink-连mongo db
  • uni-app x联系我们,地图显示,拨打电话
  • 统计接口耗时的6种常见方法
  • CSP近五年总结及2025预测及经验总结
  • 2025年线上英语培训机构权威推荐榜单:成人英语培训/英语口语教育/英语外教一对一源头机构精选
  • 常用脚本文件
  • 深入解析:GitPuk入门教程:安装及使用指南,一文轻松上手
  • 一种从未想过的网络流限制方式
  • 介绍一个我新开的仓库 `VictoriaLogs_AVX2`: 在官方 VictoriaLogs 的基础上打补丁来实现 avx2 指令集优化
  • 2025年叠元宝机器厂家权威推荐榜单:自动元宝机/金银元宝机 /全自动元宝机源头厂家精选
  • 完整教程:Linux启动流程与字符设备驱动详解 - 从bootloader到驱动开发
  • 学术会议会议合集 | 电子信息工程、计算机技术、文学、人文发展、数字经济等EI会议合集
  • 推出其新一代高性能Sub-GHz射频收发芯片-DP4330A
  • 基于mediapipe深度学习和限定半径最近邻分类树算法的人体摔倒检测系统python源码
  • Python条件语句 _ 对象今天会生气吗
  • Ai元人文:自主构建更丰富多彩
  • 2025 年弯管机生产厂家最新推荐榜,技术实力与市场口碑深度解析且高性能与可靠性兼具四轴/双轴/双层膜弯管机公司推荐
  • RecyclerView使用-涂鸦智能App的首页和添加效果-从0到1过程
  • 实用指南:自然语言处理(03)
  • 微信商户号的对接,不同主体实现 - A公司换B公司银行收款账号
  • 2025年站立康复床厂家权威推荐榜单:电动旋转护理床/电动轮椅床/养老家居康养床源头厂家精选
  • 2025年智慧厕所厂家权威推荐榜单:智慧厕所智能水表/智慧公厕系统/智慧厕所源头厂家精选