`

位操作 设置 查看

 
阅读更多

*******

 

 

 

/**
	 * 设置操作
	 * @param permission 哪一位
	 * @param yes  允许 或 不允许 
	 */
	public void setPermission(int permission, boolean yes) {
		//进行位运算
		int temp=1;
		//移位 000001    0000010   00000100  00001000
		temp=temp << permission;
		if(yes){
			//目标是设置为可操作 将操作为设置为1 其他位不变
			// 0|X=X  1|X=1
			aclState |=temp;
		}else{
			//目标是设置为不可操作 将操作为设置为0 其他位不变
			//首先取反 111110    1111111101    11111111011    1111111110111
			// 0&X=0  1&X=X
			aclState &=~temp;
		}
	}
	
	/**
	 * 查询某个位的开关
	 * @param permission 哪一位
	 * @return 1表示允许 0表示不允许 -1表示不确定
	 */
	public int getPermission(int permission) {

		//0000001
		int temp=1;
		//0000001   000000010   0000000100   00000001000
		temp=temp << permission;
		//0&X=0  1&X=X  只有当目标位不为0时即为1时 temp才能为非0
		temp=aclState & temp;
		if(temp!=0){
			//说明为该操作位 为 1 可执行
			return ACL_YES;
		}
		return ACL_NO;
	}
 

 

 

 

 

 

// 都是正数才管用的
var n:int = 5; 
 
// 设置位 
n |= flag;
// 取消位
~flag & n;
// 获取位
n & flag;

 

 

 

 

**********

分享到:
评论

相关推荐

    二进制位操作演示小工具

    二进制位操作是针对单个二进制位进行的操作,例如设置、清除、测试或翻转。在计算机中,数据以二进制形式存储,因此位操作可以直接对这些数据进行操作,提高了处理速度和效率。常见的位操作包括: 1. **按位与(&)**...

    BitDemo_delphi_BitDemo_位操作演示_

    在这里,开发者可以查看按钮、文本框、标签等控件的配置,以及它们如何响应用户的交互,比如点击按钮触发的位操作函数。 `BITS.exe`是编译后的可执行文件,它是项目运行的核心,包含了所有的代码和资源,可以直接在...

    31 1位操作点亮流水灯.zip

    5. `1位操作点亮流水灯.lnp` 可能是编程环境的项目文件,记录了编译设置和依赖项。 6. `1位操作点亮流水灯.LST` 通常包含编译过程中的汇编代码清单。 7. `1位操作点亮流水灯.M51` 可能是与M51系列单片机相关的文件,...

    32位操作系统下usb转232驱动

    在32位操作系统环境下,USB转232驱动主要用于连接USB接口的设备到系统的串行端口(COM),以便进行数据传输。这类驱动程序在Windows XP和Windows 2000系统中尤其常见,因为这些老版本的操作系统并未内置对USB串口...

    怎样查看计算机是32位还是64位操作系统.pdf

    64位操作系统相比32位,能够处理更多的内存,支持更大的数据处理能力,同时兼容32位应用程序。了解自己的计算机是32位还是64位至关重要,因为它影响着你能够安装和运行哪些软件,特别是某些大型软件或专业应用可能有...

    C#中的位操作小结

    在C#中位操作同C的位操作没有什么区别,位操作的速度相对较快,而且如果熟练的话,处理起来也相对方便,特别是在一些权限等相关的设置中,比如:用1、2、4、8、16、32、64分别代表查看、添加、编辑、修改、删除、...

    onlydebug支持windows7 64位操作系统

    此外,它还具备断点设置、内存查看、寄存器跟踪、指令步进等多种调试功能,这些对于定位和修复软件错误、逆向工程或者安全分析都极其重要。 在文件“ollydbg1.10汉化版(支持win7_64位)”中,我们可以找到onlydebug...

    如何查看电脑是多少位的操作系统?.docx

    32位操作系统通常只能识别不超过4GB的内存,而64位操作系统则能处理更多的内存,理论上可达192TB。 查看电脑操作系统位数的方法在不同的操作系统中略有差异,以下是一些常见操作系统的查看步骤: 1. **Windows系统...

    64位操作系统兼容的专业编码器C-free5.0

    《64位操作系统兼容的专业编码器C-free5.0详解》 在当今信息化时代,软件开发工具的重要性不言而喻,尤其是对于C/C++这样的低级语言编程,选择一款高效、稳定且兼容性强的编码器至关重要。C-free5.0正是这样一款专...

    在32位sql server 使用4G以上的内存设置

    在32位操作系统中,SQL Server 2005可以使用 Address Windowing Extensions(AWE)来访问超过4GB的物理内存。AWE是一种机制,可以让32位操作系统访问超过4GB的物理内存,但需要在操作系统和SQL Server中进行特殊配置...

    DLL函数查看器(DLL+Export+Viewer),支持64位DLL查看顺.zip

    尤其是对于支持64位DLL的查看,这在处理64位应用程序和系统组件时显得尤为重要,因为64位环境下的DLL文件结构与32位有所不同。 在提供的压缩包中,包含了以下文件: 1. dllexp.chm:这是一个CHM(Compiled ...

    FANUC RS232 通讯参数设置与操作

    FANUC RS232通讯参数设置与操作的知识点涵盖以下内容: 1. FANUC RS232C标准串口针脚定义: FANUC数控系统的RS232C标准串口用于与其他设备进行数据通信。标准的RS232C串口针脚定义通常包含一系列的信号线,如发送...

    plsqldev9.0.6安装包+汉化包+注册码+在64位操作系统安装教程

    在64位操作系统上安装PL/SQL Developer可能需要额外的注意事项,因为某些旧版本的软件可能不直接支持64位环境。 首先,让我们了解PL/SQL Developer的主要特点和功能: 1. **代码编辑器**:提供了一个强大的文本编辑...

    FreeBSD 10.1 64位操作系统安装图解

    根据提供的文件内容,以下是从 FreeBSD 10.1 64位操作系统安装图解 中提取的关键知识点: 1. 安装 FreeBSD 10.1 64位系统的基本步骤和流程:文档通过图文并茂的方式逐步引导用户完成操作系统安装,具体步骤包括开启...

    上下位机通讯串口设置

    具体分析这个文件需要查看源代码或编译后的二进制文件,以了解其在上下位机通讯中的作用。 总的来说,上下位机通讯串口设置是保证两者间稳定通信的基础,而MFC提供了一套方便的API来实现这一功能。正确理解和应用...

    64位Dll查看器

    64位Dll查看器是一款专为64位操作系统设计的动态链接库(DLL)查看工具。在Windows系统中,DLL文件是程序运行所依赖的重要组件,它们包含了可重用的函数和资源,多个应用程序可以共享同一DLL以节省内存和磁盘空间。...

    WIN7 64位如何设置默认32位浏览器

    ### WIN7 64位如何设置默认32位浏览器 在Windows 7 64位系统中,默认安装的是64位版本的Internet Explorer浏览器。然而,在某些情况下,用户可能需要使用32位版本的浏览器来确保与特定软件或网页应用程序的兼容性。...

    变频器说明书系列-第四章 数位操作器安装说明 -1.pdf

    根据提供的文件内容,本章将详细说明数位操作器(也称为人机界面)在变频器应用中的安装与使用。数位操作器作为变频器与操作者之间的交互界面,担负着参数设定、运行控制、状态监测和故障诊断等多种功能。本章节将...

    64位windows操作系统上解除32位应用程序单进程内存限制工具

    在64位Windows操作系统上,32位应用程序受到一个重要的内存限制,即每个进程的虚拟地址空间最大只能使用约4GB(实际上由于操作系统自身占用,可用通常少于3GB)。这是因为32位系统的设计限制,它只能寻址2的32次方个...

    中文TortoiseSVN64位操作系统带汉化包

    - 64位版本的TortoiseSVN针对64位操作系统进行了优化,能更好地利用系统资源,提高性能。 3. **汉化支持**: - 对于中文用户来说,汉化后的界面更易理解,降低了学习和使用门槛。 - 所有菜单、提示和帮助文档都...

Global site tag (gtag.js) - Google Analytics