vb发音程序,老师让我运行一段vb程序,是让电脑发出声音的
这里是定义DeclareSubDELAYLib"Port.dll"(ByValb%)DeclareSubOUTPORTLib"Port.dll"(ByValAdrAsIn...
这里是定义
Declare Sub DELAY Lib "Port.dll" (ByVal b%)
Declare Sub OUTPORT Lib "Port.dll" (ByVal Adr As Integer, ByVal Dat As Integer)
Declare Function INPORT Lib "Port.dll" (ByVal Adr As Integer) As Integer
主程序
Private Sub CommandButton1_Click()
For n = 1 To 100
OUTPORT 97, (INPORT(97) Or 2)
For t = 1 To 10000: Next t
OUTPORT 97, (INPORT(97) And 253)
For t = 1 To 10000: Next t
Next n
End Sub
有谁能逐行解释一下每一句编码的意思啊,,为什么这样写就能让电脑发声啊,比如outport(97)是什么,括号里inport又是什么意思,,很急啊,希望有知道的人解释一下 ,拖了很久了没解决,万分感谢!
我知道outport跟inport是输出跟输入,,,问题是为什么要是端口97啊,,为什么上面是INPORT(97) Or 2,下面是(INPORT(97) And 253),,这两个是什么意思,,为什么要先循环For n = 1 To 100,下面是For t = 1 To 10000: Next t,为什么这样写就能发出声音啊,,能不能回答仔细些,,所以才想有谁能逐行解释一下每一句。。。。不然还是不懂啊 展开
Declare Sub DELAY Lib "Port.dll" (ByVal b%)
Declare Sub OUTPORT Lib "Port.dll" (ByVal Adr As Integer, ByVal Dat As Integer)
Declare Function INPORT Lib "Port.dll" (ByVal Adr As Integer) As Integer
主程序
Private Sub CommandButton1_Click()
For n = 1 To 100
OUTPORT 97, (INPORT(97) Or 2)
For t = 1 To 10000: Next t
OUTPORT 97, (INPORT(97) And 253)
For t = 1 To 10000: Next t
Next n
End Sub
有谁能逐行解释一下每一句编码的意思啊,,为什么这样写就能让电脑发声啊,比如outport(97)是什么,括号里inport又是什么意思,,很急啊,希望有知道的人解释一下 ,拖了很久了没解决,万分感谢!
我知道outport跟inport是输出跟输入,,,问题是为什么要是端口97啊,,为什么上面是INPORT(97) Or 2,下面是(INPORT(97) And 253),,这两个是什么意思,,为什么要先循环For n = 1 To 100,下面是For t = 1 To 10000: Next t,为什么这样写就能发出声音啊,,能不能回答仔细些,,所以才想有谁能逐行解释一下每一句。。。。不然还是不懂啊 展开
展开全部
97是硬件中断号 16进制就是61H
PC下 设备控制寄存器61H的第0位是时钟2开关
第1位就是扬声器开关
2变成2进制是 00000010
253的2进制是 11111101
or 2 就是把第1位设置成1 不改变其他位状态
and 253 就是把第1位设置成0 不改变其他为状态
For t = 1 To 10000: Next t 是消耗CPU时间的短延时
也即是说这个程序不断的打开关闭扬声器,简单说就是个扬声器输出一个方波。
所以可以播放声音,但声音肯定是个单音。。。。。
PC下 设备控制寄存器61H的第0位是时钟2开关
第1位就是扬声器开关
2变成2进制是 00000010
253的2进制是 11111101
or 2 就是把第1位设置成1 不改变其他位状态
and 253 就是把第1位设置成0 不改变其他为状态
For t = 1 To 10000: Next t 是消耗CPU时间的短延时
也即是说这个程序不断的打开关闭扬声器,简单说就是个扬声器输出一个方波。
所以可以播放声音,但声音肯定是个单音。。。。。
展开全部
INPORT(97) 是从端口97读出数据
OUTPORT 97, x 是往端口97写入数据x
OUTPORT 97, x 是往端口97写入数据x
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
是调用windows api函数 前面是声明部分 分别用了过程DELAY 和函数OUTPORt、 INPORT
然后主程序调用
然后主程序调用
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
进来看看别人是怎么混分的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询