第1个回答 2020-04-06
SETB是汇编指令,意思是把其后面的那个寄存器的位置1。ET0是定时/计数器0的中断允许位,为1时,单片机会响应定时/计数器0的溢出中断(当然,总中断也必须容许)。为0时,单片机不响应。这句意思就是,把ET0置为1。
这会导致单片机会响应定时/计数器0的溢出中断SETB TR0 ,定时/计数器0开始运行 TR0是单片机会响应定时/计数器0的启动位,为1,就启动定时/计数器0;为0,就停止定时/计数器0的运行。
扩展资料:
单片机复位后各寄存器的状态:
1、A=00H,表明累加器已被清零。
2、PSW=00H,表明选寄存器0组为工作寄存器组。
3、SP=07H,表明堆栈指针指向片内RAM 07H字节单元,根据堆栈操作的先加后压法则,第一个被压入的内容写入到08H单元中。
4、Po-P3=FFH,表明已向各端口线写入1,此时,各端口既可用于输入又可用于输出。
5、IP=×××00000B,表明各个中断源处于低优先级。
6、IE=0××00000B,表明各个中断均被关断。
而置位可以把它初始化到任意一个状态。复位、置位是指将器件的逻辑值设为特定的值,“复位”一般指将寄存器的Q端输出设为0,“置位”指将寄存器的Q端输出设为1。利用单片机的setb指令可以实现置1这个操作。
参考资料来源:百度百科——SETB
本回答被网友采纳
第2个回答 2013-01-22
是51单片机 指令的一条 位操作 置1 指令
51指令表 有以下指令 供参考
数据传送类指令
MOV A, Rn 寄存器内容送入累加器
MOV A, direct 直接地址单元中的数据送入累加器
MOV A, @Ri 间接RAM中的数据送入累加器
MOV A, #data 立即送入累加器
MOV Rn, A 累加器内容送入寄存器
MOV Rn, direct 直接地址单元中的数据送入寄存器
MOV Rn, #data 立即数送入寄存器
MOV direct, A 累加器内容送入直接地址单元
MOV direct, Rn 寄存器内容送入直接地址单元
MOV direct, direct 直接地址单元中的数据送入另一个直接地址单元
MOV direct, @Ri 间接RAM中的数据送入直接地址单元
MOV direct, #data 立即数送入直接地址单元
MOV @Ri, A 累加器内容送间接RAM单元
MOV @Ri, direct 直接地址单元数据送入间接RAM单元
MOV @Ri, #data 立即数送入间接RAM单元
MOV DPTR,#data16 16位立即数送入地址寄存器
MOVC A, @A+DPTR 以DPTR为基地址变址寻址单元中的数据送入累加器
MOVC A, @A+PC 以PC为基地址变址寻址单元中的数据送入累加器
MOVX A, @Ri 逻辑上在外部的片内扩展RAM,(8位地址)送入累加器
MOVX A, @DPTR 逻辑上在外部的片内扩展RAM,(16位地址)送入累加器
MOVX @Ri, A 累加器送逻辑上在外部的片内扩展RAM(8位地址)
MOVX @DPTR, A 累加器送逻辑上在外部的片内扩展RAM(16位地址)
PUSH direct 直接地址单元中的数据压入堆栈
POP direcct 出栈送直接地址单元
XCH A, Rn 寄存器与累加器交换
XCH A,direct 直接地址单元与累加器交换
XCH A, @Ri 间接RAM与累加器交换
XCHD A, @Ri 间接RAM的低半字节与累加器交换
算术操作类指令
ADD A,Rn 寄存器内容送入累加器
ADD A,direct 直接地址单元中的数据加到累加器
ADD A,@Ri 间接RAM中的数据加到累加器
ADD A,#data 立即加到累加器加到累加器累加器
ADDC A,Rn 寄存器内容带?位加到累加器
ADDC A,direct 直接地址单元的内容带?位加到累加器
ADDC A,@Ri 间接RAM内容带?位加到累加器
ADDC A,#data 立即数带?位加到累加器
SUBB A,Rn 累加器带借位减寄存器内容容
SUBB A,direct 累加器带借位减直接地址单元的内容容
SUBB A,@Ri 累加器带借位减间接RAM中的内容容
SUBB A,#data 累加器带借位减立即数数
INC A 累加器加1
INC Rn 寄存器加1
INC direct 直接地址单元加1
INC @Ri 间接RAM单元加1
DEC A 累加器减1
DEC Rn 寄存器减1
DEC direct 直接地址单元减1
DEC @Ri 间接RAM单元减1
INC DPTR 地址寄存器DPTR加1
MUL AB A乘B
DIV AB A除B
DA A 累加器十制调整整
逻辑操作类指令
ANL A,Rn 累加器与寄存器相“与”
ANL A,direct 累加器与直接地址单元相“与”
ANL A,@Ri 累加器与间接RAM单元相“ 与”
ANL A,#data 累加器与立即数相“与”
ANL direct, A 直接地址单元与累加器相“与”
ANL direct,#data 直接地址单元与立即数相“与”
ORL A, Rn 累加器与寄存器相“或”
ORL A,direct 累加器与直接地址单元相“或”
ORL A,@Ri 累加器与间接RAM单元相“或”
ORL A,#data 累加器与立即数相“或”
ORL direct, A 直接地址单元与累加器相“或”
ORL direct, #data 直接地址单元与立即数相“或”
XRL A, Rn 累加器与寄存器相“异或”
XRL A, d irect 累加器与直接地址单元相“异或”
XRL A, @Ri 累加器与间接RAM单元相“异或”
XRL A, # data 累加器与立即数相“异或”
XRL direct, A 直接地址单元与累加器相“异或”
XRL direct,#data 直接地址单元与立即数相“异或”
CLR A 累加器清“0”
CPL A 累加器求反反
RL A 累加器循环左移移
RLC A 累加器带?位位循环左移移
RR A 累加器循环右移移
RRC A 累加器带?位位循环右
SWAP A 累加器半字节交换换
控制转移类指令
ACALL addr11 绝对(短)调用子程序序
LCALL addr16 长调用子程序序
RET 子程序返回回
RETI 中断返回回
AJMP addr11 绝对(短)转移移
LJMP addr16 长转移
SJMP re1 相对转移
JMP @A+DPTR 相对于DPTR的间接转移移
JZ re1 累加器为零转移移
JNZ re1 累加器非零转移移
CJNE A,direct,re1 累加器与直接地址单元比较,不相等则转移移
CJNE A,#data,re1 累加器与立即数比较,不相等则转移移
CJNE Rn,#data,re1 寄存器与立即数比较,不相等则转移移
CJNE @Ri,#data,re1 间接RAM单元与立即数比较,不相等则转移移
DJNZ Rn,re1 寄存器减1,非零转移移
DJNZ direct,re1 直接地址单元减1,非零转移移
NOP 空操作
布尔变量位操作类指令
CLR C 清零进位位
CLR bit 清0直接地址位
SETB C 置1进位位
SETB bit 置1直接地址位
CPL C 进位位求反
CPL bit 直接地址位求反
ANL C, bit 进位位和直接地址位相“与”
ANL C, /bit 进位位和直接地址位的反码相“与”本回答被网友采纳