From fa080de7afc95aa1c19a6e6fc0e0708ced2eadc4 Mon Sep 17 00:00:00 2001 From: Joseph Hunkeler Date: Wed, 8 Jul 2015 20:46:52 -0400 Subject: Initial commit --- sys/osb/xor.x | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 sys/osb/xor.x (limited to 'sys/osb/xor.x') diff --git a/sys/osb/xor.x b/sys/osb/xor.x new file mode 100644 index 00000000..3ba0dd85 --- /dev/null +++ b/sys/osb/xor.x @@ -0,0 +1,36 @@ +# Copyright(c) 1986 Association of Universities for Research in Astronomy Inc. + +# XORI -- Boolean exclusive or of two integer operands. + +int procedure xori (a, b) + +int a, b +int not(), and(), or() + +begin + return (or (and(a,not(b)), and(not(a),b))) +end + + +# XORS -- Boolean exclusive or of two short integer operands. + +short procedure xors (a, b) + +short a, b +short nots(), ands(), ors() + +begin + return (ors (ands(a,nots(b)), ands(nots(a),b))) +end + + +# XORL -- Boolean exclusive or of two long integer operands. + +long procedure xorl (a, b) + +long a, b +long notl(), andl(), orl() + +begin + return (orl (andl(a,notl(b)), andl(notl(a),b))) +end -- cgit