⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dblmath.c

📁 虚拟机设计与实现——C/C++
💻 C
字号:
/*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+                                                                   +
+  dblmath.c - this file implements double-precision IEEE math      +
+                                                                   +
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/

/* DADD $d1, $d2, $d3 */
#define HANDLE_DADD()	DBG_RUN0("Optimized HANDLE_DADD\n"); \
						Rd[RAM[R[$IP]+1]] = Rd[RAM[R[$IP]+2]]+Rd[RAM[R[$IP]+3]];\
						R[$IP]=R[$IP]+4;

/* DSUB $d1, $d2, $d3 */
#define HANDLE_DSUB()	DBG_RUN0("Optimized HANDLE_DSUB\n"); \
						Rd[RAM[R[$IP]+1]] = Rd[RAM[R[$IP]+2]]-Rd[RAM[R[$IP]+3]];\
						R[$IP]=R[$IP]+4;

/* DMULT $d1, $d2, $d3 */
#define HANDLE_DMULT()	DBG_RUN0("Optimized HANDLE_DMULT\n"); \
						Rd[RAM[R[$IP]+1]] = Rd[RAM[R[$IP]+2]]*Rd[RAM[R[$IP]+3]];\
						R[$IP]=R[$IP]+4;

/* DDIV $d1, $d2, $d3 */
#define HANDLE_DDIV()	DBG_RUN0("Optimized HANDLE_DDIV\n"); \
						Rd[RAM[R[$IP]+1]] = Rd[RAM[R[$IP]+2]]/Rd[RAM[R[$IP]+3]];\
						R[$IP]=R[$IP]+4;

/* DSLT $d1, $d2, $d3 */
#define HANDLE_DSLT()	DBG_RUN0("Optimized HANDLE_DSLT\n");\
		if(Rd[RAM[R[$IP]+2]] < Rd[RAM[R[$IP]+3]]){ Rd[RAM[R[$IP]+1]] = 1.0; }\
		else{ Rd[RAM[R[$IP]+1]] = 0.0; }\
		R[$IP]=R[$IP]+4;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -